200000 81935404 244103474 837431431 342493822 470738321 776814822 489180570 330726191 578205540 283329158 538074003 93140055 77364316 450297483 288234167 17083619 536744746 566683130 729317650 932868461 863008224 355235938 409032428 421918593 70798611 724056782 309393983 721895170 976668613 745210736 229120780 371485616 485464402 998073295 999874855 281947182 26735342 806125341 644834495 273690416 914070601 247285839 186887731 588936564 849075850 976169154 142989603 481923030 562009977 413014321 805746451 383836117 718347501 207614017 502245809 107883109 219955038 518227432 526955864 658959084 399845016 512605586 374474310 392871811 296905403 899707593 479432049 825328976 337149222 192819224 614851774 153239865 296405414 89666138 486236393 587589241 379007633 333084639 705877303 303567993 397661445 988909287 492947330 465297605 772368393 449637151 443446600 973264570 852089299 193758456 368621045 795770336 322486632 453520673 541117717 457901037 669215845 681160198 705418654 561466257 278244915 445480431 435079180 1532101 716465796 99065944 471910939 761706427 839382115 563011796 735114705 747496604 790998180 525513798 733273166 57046500 165076175 331628041 696986061 636293698 598518219 252458611 932578679 154219406 480933628 910963510 707846388 507154029 710505482 903528737 900404072 140778980 571829364 331500244 42569672 497138595 102647950 796552362 857806942 521650866 432061350 146969612 732777207 368869538 538936245 348349947 426466428 322572338 843764250 177705774 445497387 276976648 481165895 558218705 832042944 932119088 855118006 493235641 560912132 118117538 494598011 857922025 835600495 534636571 952719260 211715550 724688509 940678488 859507834 287950139 254410498 43653844 400068621 940245358 414360916 296957339 250279163 510848248 188741678 855515564 427892330 770132979 903692950 157998502 844745538 707325559 688033428 74358843 532594259 383401666 507939807 872769081 509205622 459244566 644088795 792205944 781857231 44638669 881786430 813660462 816596895 551260132 7670036 191583196 451247338 420908466 497288726 59592139 228619578 581369060 873270219 652588879 433414357 889544848 629986792 199714786 137597705 872224660 247423049 623680158 707765942 479890168 142242857 856933388 240602603 584407454 617254007 449271396 182024716 20569307 839913227 734196441 920170569 524091160 36157405 236845614 571923002 591141093 855720003 561127923 523505494 294482923 282427905 181570888 566168804 941350453 976227239 669395837 212099324 675981609 474088950 977075957 772269632 907682449 628246132 180684239 177057603 714004992 420470126 867406719 590251048 368713475 176863166 757063545 38148762 497020919 302294636 415313344 867444717 567400142 48067403 882282840 8822402 685559485 388282916 926519713 68313909 683572538 160509692 24900465 555962124 563413635 351775692 748071535 106056953 458545197 608560800 144493931 231077762 355792102 12660261 633879035 321280003 41851689 259419154 592118248 11360091 77004696 891893261 365145040 994943068 260814459 492421742 115267069 828329912 827136162 930074136 376455548 654568911 201479853 936976301 979953364 25665676 924650912 291623152 428313716 297662261 586624283 129528084 483586951 977871121 744746466 32683917 229615483 722156905 347676425 76600403 794453975 387385106 196033594 448930968 747347872 194781375 565577469 559434640 213128152 574443028 698430428 340423275 547368340 791442277 739848029 172016031 615713639 206704121 826908256 380653307 422032345 406278275 221497752 986456500 222136934 889158703 511102510 114758025 848431556 396732482 137370636 249828686 887978310 484341963 254944877 296693317 538811046 881175021 990637599 55576422 410718213 1991410 698069978 190022718 639543298 578130338 807403986 577690488 66212648 549508453 799748331 260045118 6632210 648067132 795929114 308786612 482866545 721950948 939217614 764556567 415490048 704858135 4466943 157765230 157528837 39372128 292268059 455938200 281986579 637413228 654173358 42550858 159230260 223011120 879120737 774464138 683439190 287320381 817208524 198530371 201895593 870114180 330341606 97746857 264563161 139231718 640002866 729711478 98682081 482751542 961653897 418397574 496365009 710651459 477613644 11256611 112432906 280803955 735410108 807707563 877133248 675974350 725510850 259869798 535229984 843339077 832501754 156422102 606719820 888281197 326226489 623527648 516389589 310711689 338260675 551090910 40826036 675224051 610904517 277658359 909358997 400755191 452317722 729895905 958140051 131097828 897077543 99483460 106673581 679628601 693910065 301592864 333391001 291417271 809658453 955864499 582646305 218515914 491343050 312577262 961392765 587583731 61475543 769111221 598415243 556578605 352091862 787678001 37874460 63321635 809084351 629460880 603164438 625770319 960081248 674371821 642378099 767920937 361887808 261185247 779521233 124247014 56480689 405623019 786646792 182192558 398223892 381031678 388120172 649467290 941169235 604485339 351428875 670154826 954544235 742699716 691476825 463619754 353314262 193184946 63922703 662552916 263184161 454156842 679176470 435152812 970794500 171834618 643351205 319989293 237980252 965912138 217537359 177142396 996919382 835220882 898280887 144809795 444152199 999783753 569303701 316294603 46353365 723493321 999604976 770153981 384641747 739664594 785357617 284355458 562327195 946839074 99408955 292336335 113880221 296541761 160229066 904809711 173087187 56646104 743038850 50480001 211317678 72920566 98023814 684466592 545838456 127377800 230626701 420085597 819342395 975953702 253522973 504350161 750017065 6058006 253927700 13194341 51296099 70831617 418166497 916267577 578807721 675024158 957491486 883809899 554437577 654323926 466606330 427995948 934558679 896014704 805638710 933144342 117352824 936200765 747355107 770556255 956916995 104998366 145889894 320597224 506525162 521754833 364779544 542296922 498767835 894291022 181715115 255375295 430845795 713598890 278712343 401794085 59193381 832668050 427006366 210211087 732703806 511774658 453120704 111195180 398660881 227622717 569569206 734697672 339353004 121682506 958826760 692784973 562966155 199399583 41911526 974618927 851457600 803661393 55788296 449486594 887923851 602710871 9447970 694294356 723821521 832724278 177933975 512590254 368159485 481832471 599429983 522089222 44208282 705906203 798517599 795358250 719490503 118034272 273226386 900650088 976775462 981314057 804490448 166881654 904751545 586519043 936889172 304411305 548203241 795263370 501038426 30355101 965294965 550343154 316873190 851278465 655644693 788917747 474227138 116161509 65882945 894362628 255379537 453306696 867355363 610341652 533788024 360639275 172685351 859626138 788170181 2817878 867489926 921158574 750439400 480715608 529694591 275033012 301366732 253147865 942382577 158087105 446874567 579183002 428904906 421858443 382962956 904407766 494248299 778485473 294787478 78059315 4574550 226158252 506538445 687271520 296228743 482951476 88272422 997372062 427754135 192205598 5446064 684492782 512587975 691935228 285293704 302036251 505612143 68125676 625032150 367713754 764874815 902178455 104822614 387289127 672021979 517536378 537928837 838142990 767626101 783626626 455083927 839622968 764854995 358364314 295066816 579987512 995582351 358831745 581928168 824527860 259469170 1752383 469436346 564837136 961102593 24477307 866569052 318014495 520194580 31321456 377636798 403992588 93076900 666415902 120487566 78306815 954582137 430579630 920850515 541134907 240935217 36985433 375121082 598055010 611560269 861562602 708447374 958340066 864951963 301970248 793811143 206548812 964207374 523690891 944338126 598679677 705131287 181839799 115525104 356673009 694019494 426246204 989323254 896977331 982689661 990354605 241767861 126160597 52283214 754101884 983567045 389477177 291212531 944655070 344312212 495764240 492433292 481551890 237154443 649709261 807953397 378701457 236274924 401748718 395520521 971659566 829271133 882988978 252283106 147680008 348292116 267020122 75607809 399373114 889075969 232724940 535738198 605033926 664302163 240130296 271320534 617320478 735148142 39941867 911258894 262316739 106583331 524366291 222162334 443186127 569507921 693774204 362226845 415072466 270166725 445948562 370074818 964313428 219057925 69964992 925422337 748668322 724594417 441339144 286479674 752082516 981547568 558055111 179299121 565069750 337111513 394445083 146124860 524220471 918547896 931418786 842312742 200294204 888736423 799564140 133543263 349295987 541460071 321191281 393956886 667683015 95463132 659721457 424425474 420948705 79658412 159092805 251276755 410957770 857664934 338562682 736820401 617787125 750058742 752604372 85209870 176074625 783856050 23175800 835388826 104705426 267210303 108682861 743869744 65116745 959872857 564629149 219316039 272529590 126512111 855270722 612030318 174519264 395698880 64309097 500948116 873122379 292283202 913259367 626611331 679245329 778754694 197113409 553458348 844760187 881183764 931846339 121558886 860656419 648167441 699706371 160072413 392583785 531540935 117787656 676613347 416273160 362419450 981383881 521205460 73004049 513998803 79618611 969227774 597184383 17083679 267119441 932958329 999402672 138591509 643134498 407128988 669693551 524475818 454007256 511701005 599856932 42314622 151484191 340491189 184111990 383105381 755451101 872144605 984605546 685964832 627439574 44850720 800217606 927404130 453455804 403429177 324144602 125592205 7001 651908983 137904557 346828750 55555299 10460933 650507627 432360798 360643915 576391535 567174821 663771845 465982700 718190261 501429615 994863361 463798015 501983620 628539660 625860678 584676549 243245100 260273136 408256629 560613700 576341339 246106943 885442040 32483685 135392691 395575036 320729342 805247468 397972347 297501847 463167953 926321303 601855881 754306186 701496052 524882794 958296479 483530506 79253988 911171975 191947885 823099581 976321469 425796289 973923966 996252213 84038831 282920097 831324796 998445009 16570429 791875580 145208072 770891859 117854518 885994173 315675346 533467724 416900044 293060250 978043368 598090773 468578578 132981930 840378812 292432241 71100983 6847065 407593164 30117823 137957792 462856084 771650419 549957962 713989859 268394201 853628618 407906382 56791447 110991591 709048054 707404265 191963498 421557023 717595469 173436792 534072349 121232033 223740780 605594323 313671424 133326989 411711323 838302977 756407240 299912442 359662632 492050820 435329196 166638818 76974463 757216662 487942822 787652067 16283365 946309768 570180978 141210443 776270291 848133591 865977178 923159296 372004328 326974031 768396243 487996522 893718829 665335484 983627361 263617736 311662790 935611289 872203522 750754113 348771663 919856424 35112951 483092601 851558975 557270253 116558950 208579121 285446863 337181115 36938622 783307713 643318834 128848349 163319213 452840084 54378076 247234878 72426760 717109730 467584255 450354992 851124300 958136358 241460133 282956618 512316662 621262165 553408888 104743446 899476100 655056773 176129317 384252962 15803984 931456594 544016701 342002185 381442397 892890737 313710182 829183272 749404435 733867183 519162252 90126831 275327197 588521507 58296481 856679142 79510021 976766116 198555 442448695 867100319 528049417 46437105 634917125 732421394 563444692 642105233 837346681 819733450 678475016 140855171 75096502 300445392 719834353 165280006 273718720 153972619 893293057 682341284 33782165 242593646 348038185 891233315 726317497 953615519 167111597 292619010 693929283 807770924 748639439 289567719 787887774 52179164 939884004 782716034 443633744 411330104 152989928 279506732 698646999 418421516 232358579 58602223 503443423 760798519 113834120 67657163 61964311 301622164 265172729 865699924 292227 272387945 794555155 366906272 774658619 886824525 663316599 664899020 175522829 284453128 595753416 482130691 330121536 918650107 742335 837003635 39359296 607666506 140168302 195442576 168768869 859200482 377014200 81813963 23165428 440234236 142639317 615396081 235528532 265422906 859903757 950511504 544932477 748284276 552427886 173761641 138711709 163852466 446639637 66500265 62319058 613641863 128353900 201076421 675718605 583023211 138417942 879901874 184928181 944017721 124930224 892241748 356737217 549301133 448153762 550837270 411691384 621639534 449714174 96755122 493907793 704054420 812339694 833586901 328045082 108104498 368749071 36788789 419022090 751964947 162369589 890490291 676858320 429760896 912352596 983711344 228826523 881988583 561479201 247153792 785263783 260182648 869901985 839956649 506795547 601174043 91670328 10963664 773102038 676331783 249992766 424034507 916182998 843116859 616813666 801920903 141629752 990342160 834574867 750852596 306420879 980303292 685833608 305645792 26783143 363693206 364485578 63566422 930865560 993755890 165589874 284323246 591974824 347701386 546744388 154180149 873956140 38168198 416600513 718957222 153185032 170357378 411330140 680458790 51593296 115813068 323700749 414906194 676460262 717013318 61356982 992857169 575728652 316791939 322199698 400334982 895272234 484634820 147602116 331931239 345706180 874769173 928963496 257626189 199735306 786936720 362602975 86898338 71294156 571740284 915459866 706641423 478091531 225188401 704933813 351790163 578428184 591104618 560713008 633491525 736399840 165589841 917011 441065923 614279548 824770721 346211883 531374728 843269650 120651026 216481299 776817273 495203242 556380325 287941178 639969767 773434411 770574010 831227120 854602262 558868269 751797214 575172238 866724959 969865513 951294136 426847395 350167920 535979247 888316607 275533733 558322327 731477926 278558551 842086966 185836476 409398150 820820865 896866119 683579291 874049734 75947226 679836952 630773639 355692408 47831574 71669875 420107991 181269585 613279706 727786646 698141200 328111326 169493107 261091545 48142972 908963397 618500808 978855609 879162900 611626112 855355228 231895195 386181866 531049160 619496548 115592132 771695971 569387443 937578889 984967333 527880781 437148969 940061092 278851956 341158787 407561904 235420200 276071081 315812469 625887237 783581804 472047398 950412287 253100509 505928023 947151145 747235982 52032947 149050135 783942943 544848046 838200261 466907122 312478982 463431546 180950860 201911424 387564567 668706049 879426612 721632147 466659831 683247492 770012052 797528523 653214067 492013531 109972346 915471734 546200872 613334426 677741126 946836283 300990805 440400313 108661335 751768113 817560182 211317794 91376942 89192505 838539043 665518276 398183996 618213119 49068412 220788301 664059402 341878587 321340954 825717128 674229049 521294479 452188575 489125347 619737873 251158678 896380727 70049291 64133944 292190617 782221921 678768196 325867511 978062114 242475500 1833817 548180255 877767267 193194382 820837820 753930279 741936864 334721909 137307062 334553141 57182733 791083822 331832376 688707935 125651097 397175040 82614674 370986463 780203296 35050549 236211759 430325444 898337665 860781064 902060793 878361049 236939023 492689565 466857329 907488789 821634715 212984744 451375170 722064166 818660053 254712331 585088497 421419471 886427788 935959380 441340868 456287758 620263701 959620291 969662663 643771977 365223649 315407519 734603914 279556161 306302328 3622865 507101475 614285600 409475682 900407224 184350045 241289624 855460281 514583349 920024822 321463458 422396450 786697618 746387596 887545018 786136400 531086216 936355149 682217080 482403038 70419328 649406681 554515296 49100002 815972471 471177232 247354241 589287818 55283429 113313365 31569295 131056724 172137718 579366417 255300374 302952738 864793474 655269802 492970484 475544766 575051426 680291170 336189698 698800588 320864474 268132878 594300521 279341484 800784851 992362311 194014592 624596749 466701295 692744223 691583104 398228900 337144123 289270004 825273492 421834558 237148497 611283682 764462457 152361343 485628456 656682215 752968524 293582766 939235700 516020513 981931559 126313125 673107006 556262959 599835669 582372078 329203954 229245437 913728506 333673042 768627453 672599869 377267732 920221907 715031615 486875013 806090563 526262476 208161568 869038659 270640545 113058265 545129874 415219832 499037687 640654066 356106321 501593037 835956211 985255089 275385383 929467200 157235136 605843511 277156045 890273964 722124522 379236526 108091423 630173107 484589431 395552306 252929894 585917472 675048097 148477491 775430218 831039947 962869174 992043566 486455596 342909347 667894952 380618464 840974663 642189137 63801238 793300151 888818193 62570894 398969862 724537576 285106251 874292393 448140391 850963176 87081667 470944646 883443026 527393234 587419120 594253270 200494537 185195307 306807596 361998072 636445392 689132843 593215298 960510783 861321621 767611026 228771598 230878950 426690328 477390176 835450791 823382262 491900598 257277005 241624405 95828945 583523839 482191248 331493015 842125202 548959387 542837449 323108626 439788326 290322352 986205736 710314349 685726300 853875260 971736329 438979736 886818995 172808191 420841453 510881405 431215518 199291335 467841446 683750115 257564895 202281694 826348885 385400539 217140246 456942122 41496387 829740419 751741281 997862607 797254536 19396622 256365905 317923326 186193185 687441229 623340714 381003482 987445658 520485046 272712489 109225110 579825090 347880901 283873947 796338247 180787712 501540930 326185966 406901283 188961808 704525580 358183562 570607385 398125740 215982470 925893985 446904495 594392978 514607810 860212390 271709876 549872429 418374936 709167018 51923874 152870156 128284538 443663004 805890683 960801762 95662784 201992675 969333792 634798749 910652343 958312168 736724435 498873232 401175880 766098765 98867517 818796843 316414330 521838941 795638912 284257518 452712494 684686999 862092319 295950707 231709702 829777093 884490677 31771129 923537781 582529428 775453297 504390208 219058509 779903111 239327864 857606768 69035582 966222762 55084407 210884985 793569974 929318371 527761969 839742120 817666443 644699788 303596392 838193592 370727488 278187842 960680665 991253999 109259610 440225007 836715565 350653946 597159991 588665123 4884231 85933256 662015677 753433435 300570606 352888933 376414226 341226490 59784427 797444340 190369496 58542276 126967196 731192199 335055944 13953983 770537473 951543407 640682971 762755532 677339225 21359741 17661717 308322545 89964393 128381719 564952382 409884413 880920001 878638079 675593903 304912692 129385799 429137753 128847667 135379382 539953545 743060294 601801102 285504593 236754268 849148996 832552727 176046537 135990276 951231035 857124465 550435689 450662497 135085494 68289744 840414113 228732214 953038971 869211194 155758244 504160771 126074392 59370373 269926305 681285907 552921687 127839998 189136043 924061329 606130636 348564486 932403694 40007607 150809660 639636444 880903519 617146075 734526479 259349173 648068323 604815400 294497046 155034305 646369070 338016475 355340554 910461719 749568142 170912729 971518574 138264442 244398750 184707060 982318946 826456455 506094223 136826956 328293616 97844279 733120823 673190093 263897477 823377640 178542952 812120806 43296531 465040697 328651406 984192076 591803570 162001106 519446675 474080159 717223235 396519060 586462784 435256145 207513769 745203618 157972002 264915491 565968141 324405517 109772869 536550819 465402146 983835655 461925936 324969965 564119335 393629473 604683211 584901765 73081423 375537297 25101004 804805337 679419358 671190472 398230770 906438476 85363786 307774931 26332671 744593169 92173231 815621417 780199343 542664976 855988831 237043703 901402013 291876733 223008676 818798446 812731885 418201086 164522997 124269129 671657777 830400554 284095312 538202093 976371815 466187879 884024134 615228030 135706374 709866102 979523742 599021951 455231774 747128004 479004871 94146804 447932504 234371726 809045345 467479491 470676864 961008301 142312410 573361827 627811947 333883165 998528153 957868183 168821907 453354775 355918105 586462450 509599603 688670274 682305393 919131765 889464669 224883079 610828415 938236189 146728831 616039706 643213665 393466705 755244944 359966727 662899731 969452140 585837136 406287550 371910605 41170064 162169600 17545977 358553795 52533093 386538302 522490186 26318149 630276911 21031238 7030680 11914235 201321102 280719506 92561511 641155450 268223214 414220898 196362500 133448613 165901116 139005571 245602851 398779275 888919482 138230759 219442938 830455410 991557296 432484732 473017409 125440024 767336234 699381567 41278383 846306180 175087141 386175368 836051287 6586989 330928803 698112581 716124697 809590517 1172534 954869158 275337729 765740524 27488438 640857263 368383960 654302429 261814693 625377965 69658566 615443808 879720575 721671179 601621708 991880034 309126221 576424677 133841721 227929417 309625804 33708287 813663834 333786573 231703420 238361689 55944840 177030676 408073155 960395858 360573106 371685323 748440591 541838560 597001313 302061927 507569169 484551989 799194264 906368853 966141735 137602247 916920935 266711733 839048218 450288625 259704027 76797665 391203278 814048731 850490573 824820368 819726789 313988608 317914811 972117984 347237838 593225249 240103317 530841637 667324124 701786593 722165904 770462015 999023885 170103624 981017413 397956634 443752130 463669259 742138880 25182072 834122127 448286135 879657940 190211923 349733976 129029706 572507719 876007721 23421701 790076001 138574599 449295826 713356066 260290130 609010286 81281620 460666352 480611533 867134616 327654206 255686144 612115357 221855990 551562734 69586352 114518067 690841843 739892177 222639253 159369206 871259976 946782799 946190544 157922286 78330461 13360891 455303407 664188359 969524580 903407429 771871644 637579315 687663797 702676244 975150025 285627704 694631589 284791107 599738822 71631101 597032993 968440419 901486025 310299209 457360366 403653561 7331099 222650303 858052187 334697562 564574709 479762789 45120005 19144587 712094762 315330519 754258328 2308174 751207185 86564634 747250052 373016378 728174937 566709922 824182187 316414987 408135068 906081224 285549976 518396394 346144216 287569436 205547944 424434305 300133228 168021613 473248908 227251047 749190514 448596637 856995541 79406592 339999675 958584336 37868200 521919858 620678344 410536385 635640822 114383356 783364223 638001002 280229909 428352433 881245745 213698155 831004929 709906877 925191130 513658240 811760418 982409785 722753465 935266630 594980920 373794199 920681233 432454587 242624845 979389179 714048754 850519970 849001356 831864219 77845469 139175170 44070481 337005192 663178589 810343265 831689715 759776286 166091798 837817386 518917207 177753804 870609337 21391521 922905992 601242832 558330889 957894424 108927442 268847603 235526021 200431009 26246621 946611576 177954130 365211266 65632312 379016658 751625403 653785127 752656631 287939539 476006429 945929611 204200267 157075242 23231139 208311738 481558547 656492696 630983789 567016070 299139384 131196391 814850834 973722744 69186412 667696955 346299112 652783566 481928760 400625621 650909929 144094079 76781448 156545616 323418886 218407254 680083974 809227115 642863185 317608789 564813476 342113058 57010723 605697429 345345906 446946911 661657424 537483754 880715412 759620124 68463697 78901795 370975594 228349835 230113074 888797196 157152185 218962023 424150918 241918051 982171289 279600412 220237861 787284506 382253991 566484915 932327616 923984405 939482022 81649234 660112613 55355806 811034947 908667764 932054926 117001890 93014909 767659803 435146901 649150673 977216017 222532162 539260223 279401619 211413642 794296781 506075364 23293033 857851772 48244813 896363341 173585471 572915151 687142796 728499132 122814500 134336221 464928334 681895986 74037582 17803828 177189807 929093521 582246507 138379073 934472270 528542414 276002086 258021972 428830266 343982484 610924520 721832056 698673623 12487851 776609052 560669713 348702130 227946692 397969504 938348245 938023894 349010425 972900314 369947954 448179485 440899270 846287217 188093524 545790948 884002469 774123066 975949291 807957628 606302538 359458936 742945631 229702437 64529501 520971586 904773580 620342745 733540895 24767294 621076276 77228841 624092925 727068924 171728539 909782643 568143418 282864143 652745017 914072105 182624085 663309170 674447486 715189155 255931180 901753179 818591517 414661540 29655636 903949089 133596798 878501583 226704425 134530714 430514691 622987946 934888624 468199786 7304375 920747742 596934403 285536345 38660887 176708660 407612363 341182947 320150906 176245192 149988846 514681168 845597597 367027494 206341848 281175495 228565232 656792391 929207723 262366950 642369781 201931628 267886628 235289241 597609211 173272019 298555782 473790988 67361007 900218817 7972400 519247563 104672931 115779156 759324847 571374078 249806159 295953860 865080579 722974467 869171949 31675053 612852989 580103091 976066175 429860636 754232570 173257131 104422427 978968721 715613787 386951699 519057486 312823423 229115079 745718154 1702004 918558537 173495741 244848392 834400883 136543385 250608188 488058738 458960601 725197782 574442233 966706976 490635606 468258830 889007057 748577965 460560246 791539679 812889244 87033589 561305677 492760648 85564869 85028384 546889444 841165400 918692169 360156573 570282493 967848151 421756133 27532419 987522081 753009603 926704625 421551229 919028296 347186962 75619629 397037870 389020907 448504265 360521585 965370237 313195672 998501020 494457175 633669641 50064411 544272352 242408630 76057196 470439585 759507880 950018251 589554781 459702174 596885362 139013113 959487913 418833482 865246792 468394926 764822316 423181836 665136999 70506758 639823418 766191226 204577359 655255881 145103747 670623536 59784867 94769053 100735577 271498035 660331438 295608271 653350271 83459019 40034973 752395872 900152590 261729891 474087726 582989830 578144615 780580347 78944878 204421903 921789632 952280492 85971235 592155097 226561235 311070543 499465131 724392490 534346681 948940139 572544019 87610520 953219507 37552034 109634694 726088054 733148411 461475605 625331287 872134773 993839560 716735373 588565883 872530571 951915200 927206292 559171990 837950028 828153641 142008192 805287179 576838763 830320418 199342056 831509798 283187551 995424545 489916725 446577008 813181922 9626374 63419459 780866112 351520116 298675848 917261863 703952724 534244492 52596874 437308570 381579879 679847869 135346700 544682916 340520597 52079532 155736065 353079925 956780308 831412142 306433925 685591583 885387537 558277596 408289048 700929302 277655852 365438647 757542587 98183384 92603771 145233306 667460462 729197017 209731171 461938771 10107877 386430881 976255120 843965405 299950878 557673740 502332758 729945678 955497260 720337519 399779709 723083801 718921709 103788026 241294918 521038086 404345697 345383284 397599281 101215634 990256887 751812752 104450645 68946099 510341128 902617477 895555786 922625442 297003265 85840631 773347391 433496276 689239054 170014079 742061343 370954597 161831175 695553 754814164 660932077 901605861 225985298 151761667 881334556 264654570 342385972 759162468 850321483 125146396 673668840 798899317 740733922 650154532 884341291 743995318 142490987 192654432 437991315 607508008 605596303 438276381 398784225 8331599 414247690 595908158 103520422 873973402 7626794 73564936 328725592 366724324 454704354 873720855 621483650 185978223 709067839 96062572 836674050 372732909 365824382 934268672 103384858 886576542 135452867 120203979 177132099 725632031 749794241 95985736 878681464 279140334 700251829 650825162 535005179 505288213 947202819 549696437 904897889 229766536 515647792 385232985 865043531 303202308 848410318 661126399 702535131 453471666 151045540 635240560 251715347 576236040 299758720 715106153 994189874 879138346 572863068 735819480 586749977 523862808 659327773 573078917 587801313 59495998 441623349 580195932 264144646 87914731 575962264 586282999 264194193 506469339 708090998 695665442 951697168 182553749 859125711 196574241 844409633 30242261 228936727 36098970 659787701 218772085 339410050 612254621 485680835 134050248 291666001 107563475 357121349 380480566 546474937 68283508 498581512 549223407 309376209 748862604 699669676 494197805 363468328 141055020 119848271 552802400 226917863 74185075 853979947 784282159 491851542 45016387 563229198 612583804 420544275 892130221 457120387 687797597 160085160 838046177 73186370 179717140 491215486 577436972 51820014 752589372 898527191 960513607 554379855 340123599 949538921 827751392 807546821 230351304 974975189 551715851 549482075 543487009 126040026 111680452 436677120 859991429 750142992 204450512 213667747 916389310 462624529 522648864 332128840 108263877 717067513 64184038 857007628 823267853 849998362 375879015 333075053 393960028 911298898 325330961 359463586 213950661 887961447 751600174 762177711 13262083 547156391 42312821 182898403 201138116 645176272 810430581 670561358 677812334 736108516 878144526 71216867 856156324 267975598 45631351 602314727 915339824 829308893 249646125 963170422 138286454 558475193 95496313 292200450 777449483 412393736 426812576 830087500 148066963 462100157 238929085 667394503 388028735 869392111 19238297 533445770 745785408 158782955 487120389 153783075 371478941 842955921 931629818 348898776 659052147 492114936 915286007 333673225 699110549 647708313 829175182 435436688 935585712 957345922 394206304 309672501 92385837 137538087 184712072 16172481 582082708 182883459 520255814 101476178 654275681 977875324 767792908 730049147 794768227 623870645 80581773 414681560 663713067 17792010 758181406 670310902 170219583 892330940 308797702 118134025 662959532 897583160 235626745 302913871 899451554 487130385 134032061 302881475 44694942 310630050 874113284 617259802 305938682 986796578 609704025 715062607 607506197 214971362 25954628 955773347 296757628 510473188 704063580 400848390 993006752 126879174 156853404 524037611 889649041 944325160 552784145 96409044 544534550 971538168 864782737 639273643 776189598 908562723 762671982 723356120 706547495 728746907 990883043 939334709 819231012 665593388 438918004 316355013 410673666 637555907 465942330 283417386 739737284 404527177 52244775 154562774 59844844 364117051 182533376 627270881 518319701 208134296 354642499 457262067 176552904 653607642 804432908 413747983 333592190 810859735 553381186 389180031 349066847 430722483 778225445 447373237 594835525 759018708 484937849 917685252 172985190 947103130 599659766 186757340 897388305 412975596 296020961 628746557 741751191 902670047 323661163 965379496 123050364 754885437 758835841 204199790 921540914 485287428 683727276 569478271 345684938 977357202 945519985 33092215 1553540 29487649 729687640 228949181 950468530 317033306 300574647 659197235 910257942 798749565 643655451 327311291 343805206 785205763 46211036 643983367 710422516 102274917 403050065 787579933 583783118 953969122 213274154 334937160 20779719 34486963 103999969 1096227 688180765 136838667 276337761 319482326 492799817 635582515 336438764 293163444 42533848 507606765 765272780 442916380 977581154 834604027 548676664 433155880 818888084 303928142 809216671 185551707 824138836 687553025 996675376 669701513 496137131 375368862 360544093 798496393 873905772 809343637 253662503 511489729 350662029 346886363 942259437 121602693 30238214 934052171 130849360 616395978 301139559 791363382 343710609 371157670 693407696 224721254 836258494 238046002 907680989 834826366 824500376 951635183 730590282 624591853 667864962 990510102 15491331 598089343 525861519 125560034 760791882 422810085 325050864 150656447 265113036 676806150 443237400 383553635 584419394 4861659 11836999 942733715 806991713 750383164 760909312 355131871 241362226 3585803 266922596 502255184 187353218 24498434 442197770 634094633 419431391 562981955 994254148 583706075 194616413 912348235 257027548 257316760 544316621 941364254 162214827 411689793 121672921 961125252 719416130 682390446 367641353 1809618 750297472 902175164 244004428 240333246 321918746 613623581 958678756 377494132 622397130 628838798 131658663 285507924 451681714 826955467 107453957 793965612 71121605 781264407 605763502 203175103 119981305 43551347 230175928 203984616 77950995 576430678 119482357 375389607 481494253 620770812 177875573 199170509 337581374 20339505 467252362 73725996 208428923 28867672 144831840 567509378 158702860 149394657 910277007 374422639 553854831 489208843 512294051 808467457 42049679 845221980 953619850 747027578 387270850 957719551 571936846 257016512 178235435 943951057 657371132 26875917 485772838 629263838 890777952 242663817 260877058 727042804 727236337 10815966 382142566 411310355 174606695 371622182 101321885 512203078 881404531 887843487 34155825 268850146 765325065 764042989 665228778 968607265 570674436 622862299 484518910 395958115 732615587 962306997 424641585 211597269 613589221 712096292 710162195 314487410 420932087 711142682 552257458 545309379 613032386 636846052 984433463 310312921 267573322 800814210 777217044 160322576 332101157 516247382 563582220 570928445 724312832 8795225 432982838 856059533 203218470 595368315 266189170 84695484 718371449 911466764 79756048 762591074 134080162 982179692 204851800 732217121 755714787 540615990 696843938 848689224 864803390 384907577 467722255 662756642 382371255 856338701 350101760 886446153 607197662 543775365 416305033 544920672 875581393 406452942 372705795 351852270 669182553 247971380 462996237 129737944 786574262 107883973 516489246 112694976 641584965 252580060 900473930 75305478 397229680 763514067 302917389 317559987 512432882 732396545 494140476 761000141 892161717 735155831 960436630 829343862 922349244 555467342 745505666 753749130 566849956 942356063 187544504 116645717 999978689 297736996 917178652 641721012 564911394 809774317 156869067 965434166 412654853 326970015 74252242 616092151 332167357 239881189 596834101 161193979 100768907 859808395 940500710 54655684 46919373 233311826 622802869 35957293 693144769 110981648 769724002 721098318 661710800 295862823 603983721 526693009 652300557 678683595 665355957 518811661 99100567 382256695 186798459 307232734 862841777 996339278 204967601 501456502 842809383 658909357 414272963 56545279 107839697 414171611 206697200 179493716 302131497 785646042 986875142 439121398 770968679 856215262 140181247 76197189 497499366 182490654 302316328 983112995 649411646 452117970 561998292 933874777 587646165 909048526 456221794 428104272 582253641 332084562 293539977 981085488 552356958 634765295 959124270 846045588 467085616 427029232 402464715 523052110 159144151 856710978 523240348 426243755 575872262 257344187 239044870 299972283 260210249 515523610 412813939 255934556 914520140 821011958 863880004 716412883 838945178 568890320 801874480 950184670 486738771 47877496 196113422 179819788 252658762 490714996 952262981 833225408 682462892 505228035 114765091 536689492 822735623 968532138 864129497 879462468 901300962 302668875 978201356 702424511 517875016 53915587 716458303 879729157 78757239 347316845 710382523 210085546 552577766 589418153 228851672 655308599 271549709 438830807 759934096 617383366 242557237 897360983 367956479 335095851 404751428 594107347 817055163 596232906 206856644 335792817 85055010 524837557 196921693 294284705 765069164 442329233 54197070 303001021 595220970 334404158 541353450 820037375 401768915 372933309 893984913 578393837 852935868 65325581 571599004 346674109 825565482 447171474 152012573 300548368 563310182 929598494 332240109 234611333 70432257 323797073 137537318 590779456 352025479 434974365 710634999 600427494 859254279 522074482 498342281 50157246 499373969 651747138 975728374 972080611 665205318 55326213 363215922 373343340 894735893 18100158 860155415 619867773 803406347 111977012 310207205 188025876 437426112 591246265 667177250 59784606 352938931 690370504 360697988 468497035 12390146 762769890 930557943 728047040 289613885 326259814 266673731 129806228 386480364 197695412 15977463 335357474 417845802 301844062 570283982 522211462 940893716 819767648 303225138 901070292 848588182 40942329 833863291 610533721 408902095 927187250 926082031 232889110 794337346 172816754 341684086 852681661 94564185 701475626 410758061 650163345 170494172 188950646 159379895 838618280 59469825 817397049 348199935 671778524 51246778 952336914 659233271 228391989 92198937 281454375 487735818 136320438 553050979 564324399 92719453 338746608 742916457 255816906 75821654 417986440 554918225 876792662 402929112 350480485 438904335 913202775 602045457 55821229 414905603 403376854 339658450 617114052 17329453 82531082 813753740 627441091 54614378 478979989 648091730 169475813 494896683 696234409 42255433 424367434 696409290 533725305 643120117 479722228 785141977 144477958 798552435 777038080 724236881 7836088 594275452 516365144 465633234 892111096 860984380 844056108 142568098 351757928 303320036 566684509 839445495 976797834 954643057 333029273 710966886 623620803 53541361 891715620 730235503 494319042 419153399 833147760 378288993 651290345 720938923 182238132 701345834 144546556 62059620 525771271 537984522 354973139 552729643 48483683 323619827 682056914 47966047 69281830 613940432 63298886 380814225 754933813 837216874 732045043 168309818 651432988 162341454 919862566 16218265 834854608 734857367 533347540 313626097 734247539 990595441 948311915 523613258 794836268 470544233 608048762 451590655 329612854 65397956 605567115 336918345 198447268 33265774 866033904 748461784 916284256 568330128 639834255 733074326 78138358 968354266 8630585 792937419 344937035 509163177 429551701 22510939 677231258 553326688 583049599 579271654 64375332 790682948 57541611 932933595 715975321 675052801 905836961 93597756 522115395 98367677 254561660 935252064 427638230 945905401 62090284 430118289 772021461 73311928 241290544 115285208 510069200 122775024 311180132 981081319 396613903 436332934 546075399 497936299 204345201 879426380 780812019 261349868 115282636 571917508 813047981 620910780 49562014 445666345 519529244 129421115 635157484 455063220 238170757 120304911 35500741 340818100 758090206 429867490 744951919 204378102 31920794 184132110 740749935 156474442 371753365 171554291 308088088 464240635 155691333 778327607 872132428 547810492 899597447 726882312 259328355 930361206 529817718 364963834 892347348 635915477 978753205 321093620 777408344 231228094 513613315 36965271 174387287 253081006 849365089 267722959 306638578 802311107 177277999 554323716 196088260 830147898 751611366 307337898 989170128 228650270 144094716 620594829 291131410 828921224 809387694 375130631 410113349 70596596 301407994 444967396 808975837 582004229 202705697 375741890 778307529 872857970 418552869 405190464 91379985 570485737 674011434 620124283 654161645 843388501 107318485 102488466 493984796 897100518 496883207 630376861 768669228 893142251 211148179 536022786 600993982 603994056 16837177 668353781 769475085 692935207 375444107 899186691 521012656 975264923 302930096 261606265 494013522 710936115 532146677 129242692 987825716 70119667 937668266 684225437 998996527 526344719 946302994 423691257 396113019 838411486 917465959 955656380 819346126 125651294 349352603 779739621 298794522 619576896 761785295 213400636 833022714 678097724 618842406 738805777 147000503 701931148 857472402 6536650 674635674 993033779 689704185 377254019 574082183 861200458 432479366 165662051 873842092 646541338 565527045 62280309 803389901 597938702 554678870 695191672 147390472 415929426 129435654 771189601 33221278 509400417 325910942 60582674 140184247 41877334 867741036 54501350 540633908 364472613 613868479 997107504 493129801 353069971 710605904 875180965 562684027 691970767 754720945 903729612 704150977 199331343 216696395 937980624 936337077 504095642 449035995 642178825 16793936 89822 123606871 9619426 144126487 289532043 781069260 883946558 114928592 594248598 463460610 88041044 551417913 528222087 551862555 227966779 316461337 58064003 946867799 384823678 485843504 197191524 188376820 194041202 598837048 564036407 120957013 800608623 718794075 186137640 753474710 956069626 154632592 84186663 659505540 332687008 205304593 231729298 358652634 611675078 687285274 435163832 889548447 485646552 383563346 480876722 243768261 657049114 116817790 281286461 610229187 345697792 277383290 583113220 155591767 34604331 670270811 331008988 771727644 975400932 157511710 118202535 925787582 769367142 833946137 80118350 459264697 875406095 906325961 571542741 514629820 366391195 450156858 497672154 262348571 581080699 457435044 363122010 691310945 878953275 405132351 605362312 141924491 537515414 988764203 456136051 779926576 808876278 189831596 77482061 887479351 679033415 78378791 302061542 233147238 578131407 35553892 557787318 357583133 390105187 228730197 198797587 121234356 493613393 565381267 969894706 22403657 376519886 170599997 478152961 997313715 83243037 210310596 952373257 942953212 412259875 854483513 630487004 32753045 120926632 400024142 311636819 195186393 911936987 500611351 257233743 94767821 494773081 168739525 771878839 145782255 414024980 389958523 94299631 357013558 501242890 572577946 606903397 989399136 204830028 824266818 307225742 81698738 504501836 617261821 712700667 869734103 202372583 659383713 181440456 4777083 357030261 80471176 837389669 49381700 28384131 138653114 565047588 471639381 682178072 395986180 464660689 846699244 409293211 290170165 167013502 850183492 410961531 937341255 209521035 79067341 205444349 847061893 122666382 72956672 87426165 495991553 994973065 346430833 776570734 100918969 156288829 619660140 646494370 613355884 498192685 629706792 77427057 490670629 254108687 324923007 615598596 658237849 386960250 82132712 523544838 52684646 821756935 645973939 255953861 172019346 755793876 348477611 498796039 988169835 255906612 275545852 599486889 847992390 250963899 722919149 871742486 117770798 316130272 2752369 105857574 926517181 440112061 181828079 588007651 760553890 78846995 932745249 988706600 780650140 2607093 333692650 290527763 397077615 400471046 865526639 682248563 885282129 126160274 174587525 708667588 112256212 729863123 714303259 626757902 282121067 542121308 862874056 208797204 854397918 113310470 866471558 273206958 598019914 30352269 323601634 669498591 737761469 194004992 42860564 989016453 92640842 117509802 499052285 343668090 176930305 922507286 8184349 667296628 337587501 444560135 272381496 785463105 19552613 430370299 546511897 168112996 1126777 736860224 936676921 545717600 792339651 168173295 301435168 220776080 544444421 628736566 94288855 40976939 364010801 835367407 448778252 265272215 234609986 351788233 847028332 930398222 564745900 276366115 710330971 116240521 381310297 478416627 845983494 438261504 778808763 315992274 965918077 191411150 819631243 938050237 294851680 797144736 486167537 605181885 787908645 293137759 189868175 681014001 818429382 441157275 658786118 2210970 387839232 668416757 421126690 714983804 375847391 886975183 866944840 84582360 820877634 339986971 662006074 46984997 828993460 73162687 759173300 499395986 186651147 224313498 120846972 65233872 673476145 354117835 989468464 88114321 886091508 870282742 57495732 996132749 319640827 299413023 40605958 628042068 451580486 845143440 195221453 206906878 181749722 784501922 241367157 532203735 557975331 920503601 894514896 333992478 893582991 348999139 641743765 792370677 702899020 150772542 503922937 114983305 712096352 440400469 784254994 422939371 709051690 324656976 262657137 272536327 814819380 945332367 285951266 439930573 670255584 331725001 703884555 844968691 342958262 908321028 910482477 752663651 851219422 991523041 131922548 234641231 480756821 490736011 870896708 54187705 559930812 212732655 391087079 798557255 946359238 226964959 426922217 912633838 806453860 892643705 826945107 666703344 61582737 786018184 274289124 271318027 817191599 610714166 577765449 620983886 98074858 274350299 885703966 483989585 777996247 291162045 690107608 147688366 759370343 305866357 819514490 598631848 183486922 562162797 793503178 563170218 781404252 369359534 961786956 468197117 340700948 938136635 593947875 987820386 220097829 963620414 256177234 252399231 271486280 681559332 403280227 824360607 19362594 351773805 651006562 512274570 289301108 919409442 115628536 755095471 779765150 733400081 85674360 591171465 56693136 321027262 740287306 624041504 614955954 653196688 183617568 254360502 4719126 22491524 252720088 47031219 668843975 235257030 389123261 294752381 698396126 744982334 164439330 939931952 696284111 127002480 119925644 894574637 961783745 441938569 275082019 56542440 4886512 781679675 860042368 344494556 130294103 439333157 651860805 154995792 173077994 218318844 818867164 428357345 303766685 312774323 858893793 542636547 271840140 286846919 109579437 469351825 27708637 31259230 377409630 540459942 206453867 645259188 393020911 964663491 453323162 768371097 280295930 84518003 925062944 391622244 741512215 815224209 875219380 771174261 588588400 57447640 162919824 30296350 743140767 532402076 795888932 480529180 674975183 147381056 769355934 284355151 967650942 375325726 126185561 845246937 285868569 278474970 208108539 865084280 563333053 902137927 575742057 265046899 862752349 915694994 873280414 86713829 218396672 410677793 106820250 783546685 347000581 334173529 304040485 277118817 817428009 191696692 893640533 913864756 358552213 874786911 364196152 831482631 395170939 174388942 673101261 508011108 907529459 635582860 361213635 706399960 36255147 164856245 411531443 340490487 753092988 159222561 470311239 812757742 61177562 781211891 671975452 882444149 945959369 461051676 72613485 20297356 839534463 965905197 101009519 113355665 240683135 877644885 33043650 424587827 745507461 511012142 997383671 692944074 588630807 249045028 93783190 907828266 949374390 311459609 105758907 106458688 218976576 286010059 236351217 723735902 951395694 980343202 439872120 905629451 174176071 597753600 226223017 513107856 443251871 845039264 534560558 226493244 143534287 291658541 194247642 978625708 1301844 648360279 804933814 408838252 252783877 675601249 247333352 804525130 871725001 764559417 262440 543062320 714439100 670034425 254185129 472619872 517587567 511059266 947889541 620935536 981679850 714670112 23412876 465134718 273160694 338872956 280877045 62009572 351503484 499016673 326038660 872860795 301967584 508167856 916178009 258723362 674992801 784061927 980263492 30922143 954827576 745378665 202365060 642345947 960345965 686094151 729440069 730863905 949214931 466989790 96428374 347772506 809429777 655490904 900561827 209922832 286064450 452009442 257684660 581687231 99084152 132577487 900216280 860481547 534358170 492163834 927540852 571214195 321041310 728972614 563193234 964551415 758989284 147569583 514302625 205895878 686322101 132867108 83600640 155776024 463078149 771109256 621572737 178680464 180283776 996431677 837562523 134786959 624778822 725102933 286535725 28608025 877654319 928012192 401826770 416883730 105608519 674284240 643540547 277812890 217488998 866239908 488012763 2630343 841065580 499676087 488909286 319567008 298054355 963614726 422698561 405834686 438040167 47712598 171249571 81843769 393361395 619858077 726409211 618739380 600678919 788788785 490117473 803946099 198420829 889487314 719466069 157941764 704780833 558756504 303249612 262411314 521406716 256489319 261625236 353490500 509968271 611279054 576836043 445139688 738750082 427563983 277982029 392334793 168701287 572212406 453575130 93118491 986237297 821979880 666951017 500322418 633795874 875100905 966751635 767715688 851884793 237405818 793983427 197205342 451442968 56961914 969713739 233047891 923727820 567121772 549274562 469447136 647898719 810451793 176928078 323204056 596891304 666313905 749133016 387538893 334498055 237420604 577517209 833152985 735819447 314251964 99437335 557150197 573690425 269649208 579460826 696202623 593602255 187067566 350488243 67364710 355868814 673071906 171219416 530836165 104744811 698985458 466258458 83824777 551970254 834786728 51872748 733174089 287201737 125763545 859952847 610436084 335898904 113943581 693269001 398169903 769926839 580628140 709233113 792016179 32406434 948197792 39019417 248876147 674883834 499530498 755896363 526576613 664247553 205817084 212511340 327569873 328622205 955473842 205935513 391867950 140360623 164779551 179099551 483672406 570995490 554315409 685345686 395722704 736687257 563651607 864836725 923434562 812023359 310536024 878257738 271687451 63457038 300236625 86826272 431808992 142918722 974999473 212607385 15041762 771136895 719732548 577541871 639207050 759061690 189019751 643355942 159363193 600963081 948194461 199384783 913791238 923654663 22339793 829823876 760731460 811756962 882026449 734750359 424613973 993559501 453000644 487524047 505832951 678379256 375503057 972601904 548910699 251455488 672401979 263207046 630735574 164936302 189441511 993506453 778683593 75804015 271365027 222496216 321642412 425934357 848418676 887759534 794757852 270635928 131835804 888483813 578639907 623404555 691527265 750671277 183776977 318195319 126928690 217812403 698963415 52351492 86399991 303063403 865809898 707420312 501741531 896342805 590843295 752246892 364673725 574565933 976224595 19416803 715625587 34260200 821871478 279433934 64481303 384325620 853505106 164657599 789480894 987266920 810760800 285262553 662435537 17045018 835819633 246909416 646806474 318374104 518290664 616789963 409985695 530682228 848948150 108452731 66247892 48986932 182757683 396101071 157946659 489945456 469935249 597313259 74774942 832909132 590980076 597774704 360807335 807128654 832737117 755269388 106538902 553215059 504732919 949567235 440724186 97604485 159455054 834788993 246087885 765867861 364003985 406205563 627257886 526707744 479591137 163200589 366115784 6699384 842518962 360517522 485088403 363019488 254697958 558902357 271331003 371373947 534005101 954920596 154957322 649743559 884671908 584452665 88276706 237548592 67508608 940643524 713048964 593855661 780927471 103747075 894024148 930550742 450415307 292552899 157496505 613734940 150948656 728966739 881142829 798858536 230630411 769421452 394496936 892902998 536644036 827331115 85286084 202593753 751687944 598187457 869150342 530133373 767637503 143068668 939661516 465263053 177584244 833976053 451698900 477327588 507469348 421028225 894713423 511438044 43869700 606604299 272743637 821315728 988764215 916189666 659588643 310356369 112895107 283103809 575166171 339319001 251492662 928902341 925727113 966970536 158577306 367036931 444028014 894897192 588750119 584472541 42877948 854702608 612055980 552452633 970820126 485496821 595379378 969376076 374884548 300315585 911809633 827017812 362223296 154999968 846746569 398922632 569802575 358698207 347452352 517702860 511336647 184354783 972915040 244058647 319311328 257681563 92689722 602755416 970522384 512941245 126705857 928048511 247959187 761009026 515065181 310894058 837365817 903444330 781359869 200606940 249618905 665463068 310601094 604288641 925261713 688065959 392476479 669208999 311382945 431001401 939541736 239267153 221917844 279462418 284952397 546632974 395598958 320758256 359756169 627309305 178772430 874439857 311094765 15863361 186098457 634715145 571926905 547968921 745786132 158988758 553747142 100881959 75877199 879462928 633861467 674907810 765477960 189858785 627651192 520172547 615029585 547408462 888073874 635577474 489517430 71071860 278179641 416970650 172080972 108339506 49214335 428068072 251673681 692453518 524374832 739695752 535279999 394993979 185365760 574101045 487900087 3013995 473595878 981806245 869189636 927243782 989241940 950601580 522957892 475460365 913743340 616213481 665938068 26738797 109210452 847500298 78236723 867426795 649708548 148914240 731927311 136722218 699689789 377948238 519603601 952576842 636380349 719022793 711985242 463146088 755404625 365591047 154570262 919466166 511140115 101923865 355532210 673259724 519191686 73580947 422420208 547387541 78255662 859535214 848205018 345671802 560456918 783708920 939165873 800526760 46363414 8465344 103522423 366722424 135396137 892668486 934335174 887778010 544177207 805929898 584567472 82890903 426868935 801182171 342714391 83238451 977478145 956553110 549920730 654790454 950987069 681914498 625911138 645995499 830522746 179022494 399373444 678694826 686948558 809522770 581892793 655388229 367661967 740104460 776685573 949359650 1626998 748088248 635952713 690038077 114350663 566435118 804338552 488960298 800280119 765327415 929583239 889114883 253104497 782181924 692928720 107532464 344171897 275202723 539864287 659067569 265380392 609170257 29125125 985241551 837949644 251040902 961880825 650495950 525399210 772477564 772080902 911281764 911985431 157083777 571894070 335856061 389792967 26868543 789614693 670011246 313889655 987118344 345783110 5118284 114751638 135586559 979132212 214857621 2521668 836720040 795363630 397218477 220516468 212648120 399837645 708447888 275199434 457950100 268934576 845014067 607566686 309982007 719835832 817566291 267750625 590455202 751199658 31981147 706951075 364767902 110060720 815525647 600128311 533782446 441120462 345577725 681450797 308298591 453315910 792792906 744196693 500066213 178063208 286227669 179197319 615106927 888072476 971234409 718506284 146330106 257795140 431178849 717056571 157016755 998452581 452554044 211674280 108580782 699836766 590471028 536419736 645772786 712264805 667286017 147878255 203138193 250018105 738371380 373254689 57198402 901516554 443165935 412671777 362308808 796306692 664882635 148956293 612715981 343585264 227035487 591435557 168142822 371910486 602739935 642021235 5822489 645865939 329312842 151718066 996694915 143263465 635422020 842108985 747123010 448142314 405856867 160142483 886962808 82041705 637852497 449802742 575671933 904238471 924739806 220240065 130765752 749761931 22408952 647131997 637311102 182957054 750679638 207632852 571523289 966375542 278277205 406608470 339782511 145011903 594713706 694706028 961371013 965763780 450686176 782271068 370261078 726603134 429900302 585301717 688062194 286135749 533725506 184016957 958708293 563323585 134720332 569765482 901338347 671362342 687270211 387074725 341208582 407732814 918757514 417281554 93943446 731588596 840031723 784439251 351298236 223012686 494542151 346163652 855834970 683371462 681721874 624493133 492037285 12026991 314177464 535087849 811130189 999537872 500176955 491399662 262688774 960797665 421015590 723455179 854653300 842950704 62946895 896103468 346000437 676417944 781029924 470286566 657845500 786697722 471876520 937020017 167199232 966397495 51104461 45847501 430646906 855260658 739054468 982121552 287616862 555141126 968578122 250715546 665188783 765101653 488809874 376893114 810360880 983972853 321774856 671604594 959884840 226785108 394587329 954352916 5657222 498669307 584477734 532664438 603847926 970225242 80140984 117072509 994481979 214646909 277931586 519388900 773434080 961445663 98815526 120510404 578197887 346857544 814014646 429227152 419200082 604887939 478161119 832304603 992645932 576635873 165200842 740904043 539860743 722588503 973590734 963414526 28392279 366639176 490745849 587527014 142360335 229348360 705571440 357348054 350667435 882455090 172010534 124744066 352109194 925782385 817873682 606026070 577266154 463517032 743664025 354507519 393403845 662820210 379446491 973752309 221446758 946865085 538430165 243998710 59901955 629235956 923763542 247641699 262008899 271092377 680491120 983795161 543203888 88252201 373038071 578853588 766514428 911559307 735884775 789583299 183047401 127072008 184649277 496450520 524945428 699088099 868630227 102416940 15680852 747113108 978367067 876637513 383834912 311328533 539072315 797423367 30842278 446835522 223372688 207438481 864642901 784026644 159315954 293056496 668189968 737173535 701372434 850451885 477321758 843082915 676687097 131926182 814102783 665809795 427551824 408539961 70008791 920770307 127611041 425506564 673516182 202784976 369875082 122769915 563683419 305269841 86067963 807609468 927456232 850575459 699238181 532907568 335805437 92738459 652937438 673264465 367571092 647258044 161767961 436218733 95959783 731696268 340862958 812030111 837466767 737289185 440697990 226641631 515149292 22471304 613125874 340253761 406578004 466761915 224435820 892628769 445747722 94860130 627310290 905845681 140956357 63868746 108906067 337065786 121343115 433829702 411737168 194611688 43685106 866397802 210395985 500104015 481269761 204715997 292495924 671406545 73679135 657312985 301862783 350636633 166694619 643937150 365325843 724175085 288799678 919788292 963665138 952976223 424374036 452297326 165518531 814291738 122850642 271332587 573141686 559192454 785567339 45867005 524911308 163188381 410865049 596767051 218378980 586299466 97918118 767947049 348426961 563140557 380872902 474499328 612014268 815796696 719965689 874703581 763195251 172213051 825872020 151811624 614473737 549920114 242507224 656816443 443029810 754335894 53285334 907915699 432314308 270452124 494507384 922381825 365593968 212570486 969736026 18687448 764468097 855426245 247757413 798620691 900368670 284809044 383047255 390461029 378871863 471807878 933858554 812416837 814826966 143897659 62631190 785643998 164028403 223738509 715739304 680812616 904482438 852395931 524296201 377114845 899919084 736300562 432226885 268376598 611593498 331472565 609051786 768590080 346099880 226249340 466580101 636413870 208274576 615824223 565633064 608461428 934031052 171400973 445411284 753592557 285927319 961604067 789738047 209206899 993888115 653218573 206946049 687347606 949925248 648208506 37845815 400616857 457054564 262651004 758586188 8867944 399701626 219776035 441238994 874105962 197707206 298500907 834971573 573353188 129746796 319465249 503650210 68979476 28615033 452537900 837849213 81418621 431340301 940754652 358192295 111418975 615235336 736310573 385002996 953783412 253455760 134363864 409862101 343347295 966614493 27444371 153223920 517831396 140742022 19749642 809739208 848714843 201480034 147632914 140526589 672125096 261347889 216154297 947744376 799313057 79466164 337008502 659453166 972558591 969133980 68005954 136481241 517387730 331560783 592868035 644670016 482468134 546521280 365121245 809785626 512707562 270169772 786697057 483068883 818742776 908949141 120486846 370324346 346150559 734754953 351682361 445894014 866125359 916481196 619650250 322734042 405463987 867523246 77880031 263560952 358638798 216076603 591125414 559092871 126126100 971584940 49135934 845960857 871352429 40016912 832549464 266710990 711460930 834960588 776412902 300845222 548018609 878335242 63431545 668527722 505595438 748605607 788053484 766891401 410967053 619381050 747184198 198039391 264340580 871534203 339562248 605318924 769177919 774872061 311850512 28154413 816542029 194986391 973034269 607009901 470255170 860421174 726583846 388005539 341651042 806674507 521864361 1622530 392231357 47930317 570478133 739286967 339033728 454938074 360949313 744691291 365218572 881609741 622621096 500358715 423566727 984605624 390997672 355581914 823798946 276659916 2037237 479083125 934860120 780214427 795716293 982565506 512270535 903172958 613823910 852248906 402973314 314471357 190526392 838362788 92968373 641377413 804956815 375204115 155778484 869650104 846234700 525620056 602427767 774904529 598794307 944694338 729247773 967863810 700965824 628120337 473899230 958459678 981368419 641514237 352436961 549213538 885101798 617783955 747402386 741531964 633765079 689149056 675441170 696066208 3053668 671228866 726130120 176669161 675174505 719219582 781422678 588546196 802907165 791421382 890444575 846067053 768029788 467341864 82225483 264376396 624361562 591923419 702120603 953873002 805960315 923031395 704755599 719349022 865244354 433348704 582015497 295465336 354372099 26986476 291970475 448271367 167244759 540338368 989351811 923937059 609357945 621235462 544773365 500042476 377780035 15614302 259878315 307812252 647896863 705917554 853089186 760400488 335571066 534652172 517099698 581839019 739046651 559817493 855392664 935615387 814295443 320700357 135021177 465705900 956142634 451927091 808590484 930685661 718803407 721533308 154660848 464267467 483172776 730071104 204476951 526625104 628556039 554094858 159139870 116561261 59045663 610690468 764152290 554784162 791660304 553367332 139870350 160775666 984230412 351023211 922933230 112473411 81895866 243464616 12660303 70738288 837939992 712089543 103598804 835755034 271232972 555478573 303478631 709311038 804335002 161404566 798536585 974995934 844381521 637985571 430219809 133717755 478496455 573486741 950996444 492518760 489085139 932068714 405547914 804985738 807997133 104342474 345534029 695833493 103802079 57288542 542367983 532371616 307502060 897477636 202371966 202202992 148139436 695003852 510818912 436238189 238046009 123547243 815666590 951634264 214577962 772790669 186586348 286764223 788926469 215657594 63009045 383816770 44757196 767284690 961689363 983015292 742076483 553262294 972521705 3566014 446564606 14618691 297027421 262925858 841022989 416594710 180481510 525386602 618742015 331988990 31168158 704188056 346298343 357930409 708967789 977384135 730970679 736110053 19192662 744841533 188779929 504286163 247733732 43209739 275067337 826857960 385123417 280373881 843832628 915441283 111216332 94907472 247460280 496794591 520355862 155122040 837537935 123701774 827571308 227596194 116821438 372335436 574366632 759443044 697088943 153076027 467975418 184219770 915409913 385712008 118184711 601873454 147560795 769102268 196764074 134968875 10553727 961008628 776999618 324654867 366005314 748502955 800162075 880786550 565718300 809732845 837570715 678955703 176884418 805707847 982120136 581812122 416331483 299499526 862743920 276455395 314311504 836349789 145007626 133950860 368325323 724482450 3143267 987709442 951904719 533609874 423461954 358322490 978352443 789697799 795052481 661319886 485539795 574631292 700879509 46324815 273496431 601763907 534611080 891467572 429724168 954075478 263817093 15412710 95004873 245045842 789842011 857905696 105199750 815890052 328489018 470493564 525221496 945923386 122980245 169699458 159831892 788445120 203971099 819077078 130265897 72077658 128572683 929602313 428133930 831268787 982042590 498715300 757863249 530919786 116865504 627264940 574333170 513943196 193503680 58659626 627084476 462956415 892232079 928700649 923827218 573847295 262708624 608233007 974923528 416607022 457930860 197584670 542391261 639388396 287491853 187006952 131052146 669924621 835699147 727299569 405654019 206702185 801407570 337744968 928252464 631341688 639903888 236219858 445233743 882192746 461985879 785292414 103070342 188304519 870577518 632537766 553716223 614914022 521747289 400962925 331120782 705481426 135638237 461261517 755093956 477040736 101602616 423243827 88932592 616304471 815599877 1180591 214769999 645250409 130078269 128501907 407292619 243981662 592311812 873178884 725322761 243869219 590045121 666197188 585390524 271871778 475286929 892319242 423526065 356432289 70203570 978819362 539523381 977827716 261451160 219174101 71326026 403312861 153814185 202283696 348561948 245465639 565237771 596592794 539235737 896080239 485056475 874790839 213505547 431513137 572784366 508585909 755702812 386393057 132016979 738206733 431354379 247588609 612110314 807907262 244508877 618547617 64925759 985278066 58880337 83727215 937436126 704978952 276328041 452517378 185795962 396731519 865844987 357672590 439732361 968982571 369367424 271225355 105092600 678126990 268766173 28159484 530929524 861150516 104027801 740363896 557084184 386566463 298090253 467816258 695468637 707846341 816976300 546251508 436664876 959453982 512627822 348758506 342641453 926850178 700140569 323080649 520147824 155701280 195496287 136623786 626635405 285297810 998626421 984712211 218435240 859451699 854007600 789585888 572865195 329089880 873176643 232520157 609273577 388373159 108104893 717351815 330501781 174274254 854072925 567334419 547104878 395872335 643028997 815774152 326495814 691503494 684060583 160257765 24116294 331743857 159114082 867502069 311382541 952554844 505715307 548770183 277234881 888121675 663704089 226137268 894493753 435995998 94904150 690907025 328431455 29792779 704859075 568615221 657333809 915630599 891912734 225545256 724090306 12649001 861129760 695429050 13374328 709315036 139409613 260556101 903067801 350489233 655033587 369376313 168728964 89475648 478445009 799017695 525853352 230166947 701975880 828802596 702617314 699417006 836462928 111363644 803118676 562922070 154386324 989507477 706810210 775472023 83325836 874790021 623489675 102688127 476985783 231887630 562800968 233859755 803820548 644386098 792734084 303151844 48850204 209982845 175332245 516082967 471717897 575393220 882258039 502483361 591316053 497161861 830273799 272712516 76015096 343839425 538567057 927078079 807846817 445887457 290595563 768017379 494114604 892310350 192931046 874388172 848444977 220556299 710145752 974197100 851466860 625179830 196902863 872090932 851093677 813946625 273114799 32704398 357374355 247122378 446989584 542687399 187623801 185128065 991567456 912691874 561181688 880292686 584927116 327422658 953354127 126837701 63291651 937783787 131215032 466103432 822515285 159986568 260433279 605515310 223983364 93285555 24046702 667946801 353275423 826819216 80569018 898694689 684768676 147144110 6704764 569954270 468797885 697023322 950849031 933726130 606278388 788921533 353932846 401632553 116368584 61080429 262515528 19703765 75683041 536589055 787280476 395745831 9353704 825517015 416654877 633848327 714655900 887050446 780870069 959260864 511632785 517236194 573260290 476659197 986623927 26415758 790290353 81209616 803970382 411011600 383679918 400256958 891543012 929446770 809352783 493174514 411989250 932161586 810730606 159414733 114813666 310807880 19206408 938347132 112206821 360629890 464684213 144391666 418501005 928221782 243468184 664962688 999525096 279623001 158830346 693705713 357596455 875739472 253355118 486348669 618456864 712925689 392597162 593026180 833809810 374159619 230039112 339966395 516559188 148852351 750234910 951250694 271497013 971814601 894697679 166487365 796711782 310423869 530615445 326256557 18083831 59518422 434137238 5442763 641528725 714209020 173800693 351463275 964601107 188428618 645383862 543244822 293251269 10105167 320146042 862885818 554488996 438150539 850471741 920131830 949221375 879873244 457808718 466167436 167374900 282628209 869346860 737497724 988807273 897317818 261827411 530368895 80624121 466335889 906669775 168620019 653109869 44323791 278949664 369186114 185058825 629553309 533608345 86555393 995494413 809874361 179486329 871007855 775518197 924386569 271731120 570409130 635313441 340629890 478276058 822057709 608183903 145149193 668744085 926619011 29367156 120372276 533485176 120914269 432949657 659174004 848396501 268718613 180672183 90402886 75480864 943121409 769058673 586752431 268338955 678519966 182035294 30987200 970328073 927111490 227073544 716725185 445898007 120346565 141173847 709730736 630256898 276274584 78517715 446987596 969166744 903607845 524733109 786620668 479061053 415004996 388577149 472856316 843864352 412627849 162015694 897548602 572310034 382426693 586906686 373584518 999851792 316858680 975562489 455721767 518270218 899427092 642221530 758995256 583319580 604532292 304252009 333650873 170779658 951553368 604298529 453257425 469060463 77463949 290308705 374963195 369971231 284076906 45581663 194208455 595984696 861772701 81896987 491970789 114296630 420546027 829035669 832075406 116702434 429342888 750031487 306618692 525661444 261136670 529476643 613009167 945613911 560549028 197800392 977629884 525989624 633255516 499287639 684868068 391625537 32111627 629461062 120522270 756878649 566701084 848847445 107399786 865595552 295496737 814001520 187905857 827148440 972927931 512285579 178197478 92911585 162926166 165308497 335792333 461040892 636157887 686610829 478737693 691793910 696120504 958070378 95131388 778215720 772246281 174879852 282174240 290311846 735778805 192861016 447937410 773541804 522360477 42684051 639139490 693232513 401072417 411629049 249817819 315997032 350339724 22326904 532254323 799318988 247089967 948248219 817946254 756355915 811020449 312592496 675493579 958303273 972893497 532468793 775471661 873294028 172223766 677639034 283921661 511654491 583375250 332160539 425467226 445118395 509543173 682343318 841548913 179398308 583896006 899503626 652844098 973178550 8034797 840868247 362593165 157652967 389034025 424765389 324185856 20800251 542706382 563687637 229905981 727694739 309072332 996909435 170014709 161013668 567427688 740897397 844191820 191353164 163410126 52877622 110571361 829708237 71022956 89248041 620602129 113418928 269366471 847344748 33793197 123875751 596825989 867271212 685737092 403259044 289656403 15504165 328552072 790320308 296268218 630774537 82659668 246579881 206655146 381723047 936462848 161118694 702623687 144613125 389101072 611438868 507277872 579242126 739017777 218209373 820261600 319323265 257797992 344891492 379124579 330539797 523405431 949864031 171123185 490822665 26406864 58573498 657253008 992465504 258917939 68564982 797955324 923428668 248402114 726922069 395980789 541147420 695219977 149827466 742463318 455113492 369292180 321070748 780632476 175861475 604120728 227048006 875159576 103849003 813238634 360523025 882209100 969105913 283891157 602044465 87278453 370057583 3019955 295227834 354693028 294580432 444443144 94010880 284961764 127281950 171924756 306140588 458729544 803605223 328106117 789406636 34376195 917768270 898696448 925607059 558077508 226132401 188008994 430847391 354359103 824502527 618514189 371682369 104098002 930119039 557877799 949174283 790898302 319161117 176194434 924688249 546454000 907154437 962406967 713250229 755485197 377110870 480077335 804560759 27178682 631224234 999667083 852363713 776925754 841752635 246189107 294670929 625615878 854584103 863199138 533947743 570523637 630769899 261461126 640473949 227066372 6279163 226620662 319156898 385114388 807813254 345862159 990939077 97183098 220756958 229275405 272870508 409971567 649834039 253816084 37291653 419727705 956768993 572930007 525942653 70306946 784888663 440892978 658727612 96356899 387492802 570772549 969517108 991868136 262486639 671646538 550064038 263281886 451749424 723118010 771408572 894407056 759490793 710011660 484476021 376714151 354844308 665279240 223945123 182240938 50267913 758381618 472550524 2975072 664744000 379116577 256855323 791997760 700612564 701578956 444268082 194983642 169767128 583658380 833906961 72666812 326674921 934613611 951186320 184304489 849233790 650445971 697194554 189652463 503371372 350821914 289335326 564291189 319714137 707271719 556229365 990645718 541899697 768394943 485862621 683946329 854184558 348459384 267808085 164182638 132375877 796090543 184053064 499757262 665677515 443796223 34327439 178345323 334701475 262818715 183133325 838686520 28891795 517024667 390803149 234222198 967434333 995762446 517051318 836776844 881767183 149352246 491748589 398516597 106448167 266924505 597731127 804197707 486279075 260993256 244877930 600915473 244718620 202964331 242097091 71702069 15115379 955209961 828482585 454318858 852388576 359629099 36754568 913480971 675831668 74969562 303576895 401926683 443841964 57976751 157239638 22277340 964758642 793098087 861026144 70604507 448065061 185191732 175869706 263927530 575630082 477536415 25496222 970989495 684979880 921471933 959047197 339678764 89884518 995958293 65699566 262593552 63310684 576547779 516486897 346629640 365392973 664098917 933871667 708944869 27287623 679730115 948629282 852286609 303392710 573552903 848450627 612775963 17534963 35832290 982324833 832869723 887857990 305333870 626236574 997291 893600484 860908885 897569169 917997843 734026651 387297072 26333278 620046796 237885944 749126592 510566461 648346835 990203298 24011032 791805380 759331648 260287802 722893707 830245556 189326203 898078098 367603325 482065778 737443681 788569543 439005991 41617696 713401573 693682314 957915088 122677293 519042915 744925522 495458073 299219985 456078749 756716778 551126924 407430489 283348548 197616439 174223978 927564416 672923808 574935308 810901762 67294324 205291577 850919414 647942710 490549982 141016065 674929041 691647535 45968933 320453053 575710360 384910566 720492082 45844836 498148131 88794839 482638311 257380846 325818893 873128431 326112764 757967738 696266003 826160668 63861296 409935278 977572068 124744996 442631196 196755879 40911768 473818976 569670494 115690540 918021133 444370000 379682947 932165434 637390025 284702307 147625169 120877473 256708825 598511430 349967381 79834097 591236405 392582105 855919801 156517451 739008354 948281778 957983167 420431687 827625075 536530979 902284837 350779067 609549460 958915975 52092207 210399824 79922985 410926101 186400612 126660310 724359972 724761015 662879995 48912769 384076329 119586130 336184061 147539668 86082384 219197002 74799835 346438686 681903049 917467956 853768543 542095226 539335171 713488226 739556100 570724319 480511723 684397754 58373830 159074175 2488189 914702568 860456955 184735234 931069959 427312367 886962090 330163786 592138025 787794114 475736155 794762156 640091124 714658518 798874189 881200593 385209453 619691304 216567002 948993056 781980908 443829223 482804472 888281282 127930079 979740070 37108800 184200370 812579278 310975331 987356993 288460719 126743432 573759792 100830447 882405581 447584236 141239922 773304483 248243657 866467578 795027522 898738630 484744061 141261128 553781432 734472316 182543357 594994630 271610538 179450961 551045067 509415631 239518952 832293986 577793159 177383797 110755859 960989739 728974895 176395092 608218553 87767749 869327361 390105180 350228300 835709264 858882247 832270343 107912404 928734337 643456683 192837492 954031035 234038821 221090709 760048021 222533897 744006542 453725914 589331936 884816668 727294508 654750951 365095633 343329219 603802995 857516105 41639326 348125928 78824528 230871428 594874275 785797021 208551956 987552468 288969310 807041648 400175084 477022354 640505064 170812912 999848182 355561445 94667224 444279130 991108429 983631922 461940502 959465746 333761628 67575494 309918022 608755899 383034896 911448392 451289466 425559125 155370009 909063513 536686652 364029683 780500362 257386551 369420115 346422547 836007492 200590478 30368933 588686297 596523552 603521158 672891415 257088142 159033304 97856053 357359670 366776514 194187927 43564819 91599630 486314063 550101181 409103862 78926581 432023144 494963473 565195555 513471919 217855781 640837700 177666959 917661603 658288917 28576488 865449601 191382315 35589684 717002134 922630836 459405540 809868011 192991859 156625794 203722392 911116369 201247261 262041160 988653517 848654568 408934859 396991152 618201485 565071803 613637973 843676202 810800959 450939061 517491571 82900385 414485913 566185659 766186122 651508761 349004891 221325737 105414547 831691672 677198449 925964210 490481881 282289171 776060730 614556138 877371264 591209034 408913787 442550244 194482467 186718882 171224743 922491477 942342084 318930743 889347481 481899835 187952492 151952012 508567898 628448248 486104699 149379620 288352112 609312419 487933649 419369043 867959408 931044649 273698907 926724130 766016444 232841578 469946089 393003667 93783342 387389183 730004206 67036591 672968757 458897123 620234 200595394 448202099 362776023 927537558 539494154 545615731 177500785 780296392 4761702 947622522 122520110 425041984 773623102 856077835 477940155 859315747 935336671 110326123 809057324 85424477 943070904 370714884 483308939 524864766 625259946 250455755 164988303 170021228 956053657 248822942 710061088 47364505 869383856 539024600 166690152 839065686 461250163 248484710 906354104 788063797 293328696 551546508 559886259 864893440 309840278 63958533 997352819 88947493 548950387 278366140 330599521 320799103 791669339 280823562 253299402 492696840 274924893 994140140 251189591 956922508 207384957 188244645 502969954 107010755 542093954 944657074 274401073 463638154 523320918 827090328 290233305 374691259 610899669 66402785 114836016 132526837 614344118 500193601 867691654 799166846 507899466 979122618 822055432 333533613 424285809 452513215 225031692 765443648 784589237 741919883 111901414 838849883 118273608 803487694 530146236 567026740 297186519 812620581 104887855 480069434 837596933 632568675 494123441 185560193 119003521 537293927 869298125 888111626 169811897 358585551 583958342 245551321 787224448 570033885 676670814 182110634 602205452 317646163 694264882 283280425 930592898 538116707 527934804 797935893 714211726 254018633 806386781 36506220 363535775 867328402 777775485 692764727 443383668 479620699 213693391 980470008 65151385 419383479 400519642 165422566 454125536 617441420 601762331 916847355 414619275 124461815 476957433 998708509 252924950 776492669 896654566 997429469 478325933 933785306 971589589 613065877 881953101 931010983 533142214 85237806 215855444 830816283 15594045 282904321 300229553 116480994 870900537 586684515 594989527 604380431 826927088 135751040 106452143 568980725 809746827 911960703 526770960 28116044 892643781 143323107 40974409 917284461 343936456 409640978 190234389 345280105 212265063 912248714 930534623 945570160 301879478 185544579 269056965 955017581 621633720 106206388 541393587 132281349 900103970 21582305 357363628 704826168 550200049 715366935 509647246 76748728 697778139 309482715 8009491 394329024 580303274 983473407 30857103 746958467 314700857 668439247 163156325 257958503 514265262 916736516 169250921 242708281 22396853 826731600 813789008 293136772 477869258 864169572 57524818 667184156 120276000 515402708 958974275 846594363 177590285 629735780 629574187 540396913 385559336 393351843 620334162 891616518 658926617 832272475 509132593 441480438 533641830 247203950 791785207 154828285 196197369 559351312 752103628 766065988 33557642 292505177 846666742 831629518 435856590 733141715 247983317 160017116 39038978 990263542 337095605 940213604 604388818 876092494 634255084 805958276 845874646 22037803 889130372 503615257 424772614 224238917 573866413 79105104 852084789 748404309 694304393 974842076 131730150 420976977 417206610 246148192 120604663 647631176 358476008 145685701 828589976 878223373 967613325 961686749 487357982 657643884 871659971 948642823 744362485 217081623 301224137 942675510 286739430 343470448 893127919 549268644 157524841 990126792 244217837 541723073 481587 859998559 598938922 230263248 279403304 51179204 205445831 822368164 986918999 939368018 842249091 753469497 532759077 791239187 248238678 896254115 43707489 293430796 920714911 877232212 962235059 459672946 259675117 441159018 704227219 770343423 542679493 428758274 527951901 608098863 517818004 46899602 550348849 434214163 70552840 806906388 241769424 338149782 253490739 962811263 430993631 95838086 415039238 661049090 584666228 993774143 942423915 749110838 716512826 397534816 545141587 605219646 376948083 514243609 585372700 396805151 139066807 917690920 266637919 830504185 759763084 766566489 56525158 398882183 146393240 433333392 630042363 387140681 659786178 738836037 570597617 790590015 633126832 868224784 757983312 608618185 489632354 319079679 327704990 860180461 833772269 668085576 510845470 927003945 400450208 479213268 175564891 299155585 899605902 539727923 1919723 503005343 171516336 653922521 741483925 37890888 271295011 572349946 35571667 341640285 595126850 783981957 836774337 717658719 748479867 333308284 525179040 328834831 473696674 759182468 193748138 843475139 226336686 308555618 246772047 118474135 228520820 269239978 369423135 268562070 904104301 550967703 187434240 207615836 366883970 79917437 603102090 127019159 651121604 893585692 18524807 289076423 767736182 155777546 194892309 585753827 424477275 239824687 589395582 259801950 786634656 85175588 293825054 269698219 732524781 42810058 491575480 214879471 477514046 353778201 861555082 233176150 564906258 453612257 737645429 459309861 337570101 372081235 353955374 469815726 297964457 390235363 114427750 949342325 351324165 752675802 334743333 952839567 685406572 454385533 214405690 23373384 814573181 320658529 32519878 216021132 535865205 666808818 913316805 633785564 146797896 118444553 327203305 860444573 801393125 731304068 118166495 444614869 470647480 696619795 501761090 275742842 733644612 888889019 522840136 786723380 967816325 541420706 673750440 136374542 388949044 71376297 834432110 76462605 622459488 184624934 202422355 388047297 712869550 363688178 962417798 722922406 495366276 434413603 621773461 598657876 79745117 45488069 60230741 325274730 275000938 824090512 780869782 113085436 869674418 341274556 920585642 706516493 256911481 958751649 257601627 935251649 687984936 236426694 48272572 986093572 472062148 732610831 964801367 452218545 329535530 925284431 6125459 283982877 991920224 67742124 956263443 581913025 781954640 418164101 178993916 764072722 770841064 464799372 134673163 84021089 267182033 326643326 25876067 782938941 231063797 952569448 567181503 801790610 510363650 726888868 876321236 646141774 234588105 742531299 93106443 678239157 272087891 816506364 922026847 554560624 425313570 75522165 821404384 304904306 75728766 484436188 600496271 189023827 793943887 114969440 536178228 525682509 791640182 940310118 991868080 248496367 841511438 466630513 303717857 856748809 953457077 606920132 464416446 677560561 971376335 767645882 218449245 874391602 925383822 57365176 689120695 612953430 960968658 93279291 171672494 843032043 55285186 187973103 424453083 937969308 670972975 181726864 608272653 23160618 182560183 272893652 585466504 826026203 41453963 568923724 723082540 584569481 36362503 709183885 862092326 336328086 774142903 847681303 543257360 529557656 273155615 331283904 281486273 144398432 861566797 844985533 951482941 596963664 863220317 551147329 536842297 651981914 185453574 26035631 106769155 89552648 984244140 696078469 341095193 722448851 954892266 950588964 661273329 797319495 410112260 607046084 378667784 431342179 529013293 490053826 993968766 383558568 948215750 110103372 615208639 184190575 229771284 377947725 84270552 665347744 976989384 193440288 110514269 854825133 381894005 883976201 873077399 623113456 221551787 998230331 856145210 885012264 254673325 638528055 842479698 431887915 764021821 846194235 307264547 689653004 362157368 747581469 389358163 878436948 620202865 619362941 973451727 333601428 586487222 886379525 447100521 888217252 419877136 545268851 188311119 328851309 719330432 38054963 532446804 256037606 961142775 554067499 999262962 472683878 433187368 553600676 800734919 195847190 671013367 847412603 947650950 30742440 157985069 192341190 338412223 475931487 901082319 494191916 656201967 242983938 329864542 182507400 982426148 634287626 892840352 540522863 33196567 344122586 260001137 668383563 748642515 363919947 934550160 837840314 796894362 933944075 949003192 135052159 989203639 8584619 198509808 473710837 335793006 68289613 661084040 710937433 143040823 983269014 701848888 449826420 681701617 622054717 416284212 892825658 176383513 515590858 126441892 155447336 768681991 850420198 970998349 221933811 392007247 202069244 145774279 724699343 890516504 805075186 281572678 278833852 823973329 103054026 700418552 684786820 332967187 346649118 549045751 312279527 396962407 732502751 134607328 572833139 240687291 465488956 614067470 487120572 837634043 296910061 97934210 87140096 213416622 351793210 12321715 125813186 411363278 114372642 411382624 407961782 59551020 639188831 537899414 783519584 678984675 316930545 562821220 824432257 727922269 692371134 231387667 789964125 981878600 36060230 824731856 700752432 203612774 886338529 486327624 28863208 21479541 213761480 890197960 962317474 562387623 605412387 385522474 653288700 858354334 818595669 380571489 288250889 50255189 969525950 713450710 836162795 436423090 386889571 347807447 551657291 452671918 124603506 241315335 841663042 219391722 766592076 129872346 806858128 344525901 185332044 521030455 342563357 759217494 403296783 755091659 797551501 670279572 678822314 927510291 258924290 790745195 780793785 24869515 185997944 697722727 889708328 815698973 724337938 911182709 841585249 256657583 886348911 985905515 53357047 838063595 682115561 406936426 151740779 95045866 276506112 441306229 880861058 588512499 640081127 322928103 205403319 10251540 513539452 911684793 113867382 908831973 412246866 920757291 87826826 398200769 460810684 555112114 90612917 631644085 389401416 330926504 298667768 447013725 603391706 417386245 38110156 28223942 14740638 603981354 161928003 53823588 841284192 133534191 2896284 441104816 469234117 92579495 747820276 546632182 60781467 337506914 340974461 909789696 299532413 629885560 549869479 176760725 668423536 480497013 817666558 872612329 103882133 7755354 261208552 804779453 814590213 816278283 937217992 274448187 347505229 907368787 62626182 632880766 148187696 862339140 849843777 380273013 141543583 230551328 396577202 204765189 880863420 444547376 444620586 689058661 590797826 147586866 506697585 996911048 935159888 531576421 136207244 524077263 655583691 787035310 640894791 597667687 471258547 474645361 919256158 903734280 581962420 151375687 98808987 221193314 826267699 741957920 283423535 684501099 83533930 624882629 176342302 131830346 874849765 197870905 191337224 571098590 357042236 787971461 704496870 27584741 933844243 303157464 434529653 789591276 511103631 294187197 825851854 380957212 166540736 601520235 927907914 860415161 760924304 337343575 510177032 174902023 747505848 28949060 822156454 294446438 632943252 716698885 891965100 980319419 165361271 540126983 485278359 157833264 522211323 665521100 569406270 103650501 681514544 139396231 333955335 149207036 931686296 994650753 302474960 665564864 487359472 8808898 284255729 998894180 910206001 418219356 349615183 178731329 805932396 726945877 797398220 550611214 416819663 673280550 882641270 473720023 101826990 236698456 739910867 5760595 531301142 709184974 101097541 517919999 496744144 459550042 664983315 464270189 535702872 292857557 984318020 769323725 784477594 479496709 996594297 174371468 250307071 927839150 668329996 484782841 973770075 879454890 824949510 565186913 417973441 829375303 795704880 623716385 626972858 508432863 318900522 595376535 791870741 912946826 106322039 244050304 105148304 330950636 210254525 768526762 162170104 132516818 934943895 557155557 247054556 332078423 449711091 48055103 15703479 79441617 808052412 451594570 552650259 668702394 217878524 678587404 423704209 120478965 631735859 568507051 207212092 196643690 243587766 260537200 708071752 266436196 467253787 289769152 242663822 931785642 764205981 862963701 581759993 165758324 598552694 735236393 198786901 247257480 201404732 17633703 880006009 70527900 643738893 807183421 902595212 727164048 897366628 568878229 465895835 139513955 1184024 859585542 732595365 547389595 28464917 618000874 148174061 878727656 81356259 324287735 542887143 335287803 533829051 110355356 980431424 358539321 46047391 873656950 858816972 670233341 718765507 283952632 233275937 294619102 298081573 698710149 984557759 909456420 829026735 439337299 497416519 967828 243353127 325078637 948063185 554953469 677261499 414980552 44389217 122589094 482541169 868139437 315320144 731860248 90827943 426293125 436668288 506495663 545966642 703624175 546046487 526543832 301188462 119644952 265098213 219790654 874550123 117563146 775488132 568316585 244151769 597466507 230140463 190579493 827015746 24139775 330417054 539825261 719411533 579498656 244323590 167399617 141711436 4841157 658202811 559272118 773668800 19374851 151223562 447621737 353793307 826727509 906773289 636415478 625895395 571419545 648792536 413485564 149447851 814000117 541494736 573015303 257545808 934517939 885917634 337335895 413524901 454480780 671937006 823525224 814916756 37465900 469833241 721787186 407683236 567338978 313005513 293094767 747441548 921685232 660117807 718328975 924946276 13858401 337452961 277058478 438111802 813598239 710193263 125885852 514058018 410270120 343232191 365308955 404177102 749890270 585812056 376931930 495418810 288898466 918322057 227071554 802671750 96345948 389511875 135441782 651901033 189991587 313972629 320819996 372306612 168311919 360043562 474826859 246012831 207999651 511631 455419146 527846042 32983589 331458368 293307041 424662175 271282269 885050366 572082589 57869094 12271993 645801017 528636800 94853135 933717722 583631880 456863057 7877071 820691028 335605096 893865742 852826175 338984368 373037421 865010153 586208625 212997862 875285625 262807343 859020239 7280877 169875305 747506986 703893927 948827645 438252935 30598814 118950135 251018689 52335578 226591671 488081736 593334393 677251946 382877976 339964532 190381233 916917781 846130300 241162329 175216759 322877374 798165244 318035524 763537661 919284615 186718487 624368075 748194715 151282170 741190946 764305177 723296613 408834215 151211397 999274343 643618926 479028141 457049681 336656138 308317332 121760816 970286593 351413164 850300046 697420577 548108230 896174978 832917695 157752207 558437220 850659447 168219385 938832182 403754689 979995016 848721181 90982381 365696576 86282543 369348360 896975236 304302520 469436569 740428416 387770806 322310429 848019867 973354201 354419641 258364797 738297900 280762028 127896518 992550566 670029670 999477858 138487024 473708460 118846332 449577802 200783554 841172421 596836149 139299750 152271732 334048219 978578500 85215633 905582344 168774653 837301083 148258488 624299701 351903423 924574515 809437987 998507602 545686490 209462016 900544691 190366807 529381844 587323960 717729048 813626524 830108951 653738450 580906370 961421704 177462119 789611459 500145058 586638734 143380224 724533384 260064553 223848942 671643205 88598954 869489905 864885616 611815671 406698052 475269505 829022145 712975939 559392087 38233037 501018907 125926528 751524269 988243452 160493414 652263563 450379578 47303615 90311178 587603077 433391426 644341297 980428508 275215536 541758977 825244300 785519806 823304318 96178228 546785973 48461635 229258985 389607231 857213628 571597579 234319842 84931973 156008226 189942028 788536572 91954028 612519230 670326761 174752362 650251387 545703459 583675268 250390358 719708865 408630863 106305124 563606017 4640715 104524285 410927997 650833303 161753182 464901977 719089757 913892842 909219013 745807840 882602229 358245867 274073742 435264412 966220018 427856797 144069655 384140334 144608110 240515177 816692247 567818792 767149577 248732310 559546625 733751787 750392868 8008794 306160341 693822386 431848387 376372518 828594140 371791297 951841164 547710514 3162735 822085795 828695446 80183813 152175491 241116488 131586211 381734732 59125262 30200887 783062428 669289354 982272335 868962008 459844492 38468582 420693732 995744431 311309086 793906538 144504418 915929446 729427749 628685943 367788296 243033055 381530601 703344538 131886986 780351826 241235860 297641682 926397333 564553174 899379534 868649461 164536900 833251567 444621410 395020664 904565999 754453610 173269649 946133354 399282139 918455079 807252720 83409400 961261949 336755583 280278889 235378847 496738195 391913451 207692027 878561191 178245080 727994628 813477406 754376072 470707695 115905141 267307951 117635681 158609296 52336071 368030625 427471831 865793884 200738580 663439361 502211397 879743690 435870779 854107424 769710395 963580423 38292509 804292317 757985617 809749711 214913413 858176770 250652419 479254416 84767400 812137921 348560787 48363384 322619955 606484840 359747290 197491864 370613736 822190160 969222098 347751001 801417263 70721517 997637788 730908165 252178128 147085902 446904693 357837029 193287793 346077249 222014685 782103256 488885743 49921800 961208443 9827702 841716687 633279486 590416335 394237221 316684601 385672391 500425615 8070458 84695316 655364751 334464958 281235350 455063359 80413220 361347269 787140496 413792015 431990858 346794207 295461037 525766374 506532558 780733365 173037170 398760744 708177580 482568764 360067522 111549175 69498029 657197343 684563020 866234879 859932942 650340326 95363655 292455355 846316090 564508188 450138269 386484374 519980782 132539425 620851017 428562196 663632223 135775439 909270839 405532821 204490348 947994901 654890904 654515615 753211183 7140868 386501926 862214343 134382580 672630043 970499654 56298076 878132362 669058179 74813514 633483066 669781305 679118641 568059435 882676676 607886329 237619466 918431192 761784477 854751296 786414236 534684414 510407327 750768447 557408343 24538106 373175491 470424283 264238511 451871948 696407845 819886271 646951397 305412344 532156923 987411818 417780392 757927310 918547133 788905199 151112587 326058805 551931258 911205434 541916737 292623889 13111471 229230928 93558383 265721529 850439186 227537541 649814094 797946617 800901379 151888368 466071799 414918572 170466863 816417025 118817999 414256211 792550616 59798990 154653043 122329491 308339410 327720789 187248991 343342742 460764401 664391788 225483989 448971331 355757994 896416520 783928011 63279016 471249450 37005809 286308338 845850378 629820802 899767051 368064517 702837347 178272621 247137655 134164110 643637605 836640608 92959943 790211328 560572923 479287068 804863334 80944641 512076667 807834177 183289050 993706281 924866942 139217984 453192237 935000448 768284456 69665389 181223191 775099049 857620773 898767476 814202289 549636966 796919865 870407488 9205597 948436571 591130738 411963787 642241831 249691793 990573174 229237445 303972539 172143743 774590883 159896882 763982676 714530612 619416171 711948284 133179370 265369887 713110023 962925441 607281926 667609032 877949523 352608483 416825815 208983808 608792562 780033951 233214281 20903107 539776802 569952720 429336869 220482426 775166426 982155245 838258552 769670253 456891531 479650589 86440264 655564208 957099185 519761779 62885976 72647091 990125555 453426367 548650395 662354442 518722555 543969327 277626471 970428746 398226196 744145966 571976981 810000814 402625647 902249943 949469364 88398876 981816481 860503159 508607635 413776961 202292004 57214913 476565060 466395693 864600857 826518690 397579298 718729129 982077508 383435194 863101645 199732481 142050105 898567680 572539839 993586880 934786940 295175153 253799495 121988680 446091108 109889965 817798799 528004240 556603308 873445404 274302720 785197116 967599073 87718842 240181319 99400777 752404630 204948357 810325636 718316367 32294982 285005402 53141728 667915278 656694149 869995214 118104907 5588541 187971722 755835979 920661582 218680312 493525652 439769665 415861503 669569447 998578889 128405553 473988628 773970781 224867195 382847102 465445249 53986186 524243238 897517116 877377473 331737135 888648772 217163136 560734240 469871488 534179237 66405009 222514716 758026385 214557257 648242957 445094523 348216567 986769445 293274129 342351383 794666163 584869770 16441663 239158892 243894258 157484420 376193288 350869711 276108450 490119900 908665863 804651257 387851420 455111158 697931235 849712206 920636353 988586303 576790564 100597143 396810932 755287564 52295166 281869325 44776628 399257401 297150124 98877082 373877464 643666887 720017876 918912498 620556645 346857013 79680930 753659478 873766440 196761725 456532681 340506833 310012052 844819063 141402220 551694534 995154064 908427818 341904629 427107967 719792256 443903260 517867733 704683804 906534576 739574250 352274135 660877402 908140102 299655566 979047999 820229191 903724988 916830069 350198187 879305667 323444607 671332428 459053063 762780653 841680256 627667371 699209205 731637425 272754085 189526536 500789504 400149633 255246225 64622390 870701403 689156399 931346903 574527372 369461970 805822587 826051931 545853346 273596337 426054152 94602058 39969870 247159413 358057313 918153695 461395563 772070596 332212704 997213915 565944362 32989122 340412175 848433008 903707820 573221824 45477570 755950591 810920146 2296837 555528497 961259768 702299091 695793848 863334633 93001479 752749398 220122164 444153261 561132799 327464351 869453270 598138583 641166203 645702723 994992067 728193158 375367457 10490229 134746535 930703200 105690694 205355659 102188673 94297844 90280022 870126466 428583294 238574044 514682758 291970720 569942646 341392005 659463741 242249872 145445567 736323426 82874913 192217873 123815555 936188223 697195752 588506191 824276291 828592464 107269681 977485361 840548069 979006064 453020435 655606062 588033206 758862750 426969614 275452567 684324097 361402718 862126063 535839581 80252795 369180668 562651778 519228593 343381479 479460425 308038467 509051197 138520315 434999292 543504530 219462002 721987004 761293101 254865755 241038528 460139822 185716787 23528306 245084927 633587958 578014421 469035937 32158940 206183117 708619491 219211983 326699083 790809266 316543333 964269425 709309303 510529851 835307010 125785336 144285705 850688128 699169239 265369985 15273125 631142896 610840512 226335513 444527829 899106331 475739449 887601197 328021739 630317088 909203126 947272184 27406325 183005622 531176285 125546050 484732578 257845962 681829318 395865808 977265170 320846 608216704 394669758 895024653 616072645 387631190 199031271 323735958 295365181 303703481 458895118 630726000 476326227 901082638 602875056 765078397 140283357 362945759 589618497 13163466 743724023 224475413 863215885 536964576 485846926 248593199 473694478 802329554 959630655 612830008 778821420 408158047 390826641 145299154 60574664 971405889 318097967 747311796 101933016 414821317 528877693 809288493 890138727 584233887 118100451 586886373 560892584 852712365 788728549 873575693 818849062 822337552 918984806 793137403 114478119 408704991 212776351 319735757 975149094 557227233 380910756 196619219 402556557 74077215 598152147 194359406 24382619 725211855 989966699 951938075 707504935 42330053 772845384 73687531 82380037 923501618 378367100 66786034 675839223 627049906 516452822 38897678 334612527 264155798 759757562 254756364 338931688 727173353 665259140 506602339 696332202 881842705 2104752 769160432 718568423 600413443 908787055 535633121 833788877 191521137 33850936 853452107 344698608 444375714 519661490 527107046 449033266 820469579 235360877 947891178 44745061 564083556 633561905 272822252 187579737 556106247 177199756 304891183 824781661 176739675 272060904 588752715 956416775 934100877 90265882 564427407 884812877 669490253 752324587 794324178 332674459 949572702 575151993 665333204 376886616 122152339 389256373 999815763 583688597 870843858 607736869 340572627 128721797 882469773 965101849 7526435 328182579 893832527 228161441 390601885 903742625 614844206 493753130 697516427 900837239 624720530 440152064 177552382 625483408 773202912 255969822 417396741 240411941 427290440 189609894 392587782 721199167 551373038 19186567 795619875 2753075 168725566 432184278 843014548 220910511 475290157 152794783 214476762 72118496 744971642 988545575 796169510 378652555 268977338 527177131 921657394 222758864 236410680 500952879 272100906 5130343 223396282 593918190 290511682 168915662 438774386 535150826 127220829 236653163 775740709 972689910 44392863 57120637 946784434 937075304 487186714 700584086 23025932 450428263 587608236 728983160 531418494 565921939 326202386 427120082 138048168 861254583 431314807 795586900 837598083 441248809 125712733 699388962 66960028 155754279 916017681 811830088 657401880 983516966 166073707 137673467 310108785 385386284 931282965 678018669 381699916 956887301 892745830 306279104 633543395 195294958 134547272 953554380 281473348 158952598 427037173 933891436 202220569 140262375 968223752 192500608 908291108 957783139 853705487 174687209 218435881 392174006 485059286 90181536 501434619 946285990 524053644 885821043 632396884 323903741 258112900 265334079 763451737 921303188 601695748 350591286 355448718 154013386 289143091 354596807 774553688 516031417 713248021 203742753 496479904 165489054 598332684 466281729 561761411 455473391 848655590 46147415 266970759 100369681 294428471 888543774 481462294 495088356 211838682 1553731 356368046 833000549 111739239 621670773 366621735 741811881 561618843 807347478 724929291 149773436 9793585 503574791 818753360 250872280 893429287 510137163 318273971 182705744 179077884 958417965 58758515 892780389 95691624 635716973 693793523 600370023 495260770 216035024 725620922 371566441 451752159 432972828 338283101 46975337 683442580 872160709 732803976 869940276 882997227 792531086 573017419 732704017 781587366 947668823 911106261 473008968 56795161 815896982 183524867 98903977 656078959 875636726 262852616 119288157 816422330 162380358 553343706 620345154 921279136 527983361 268072665 680069891 333953139 147928864 893265576 831456311 437591436 595214083 832663957 968388771 421276008 153668269 210872314 223490059 930682156 244701264 311101597 698140918 362440872 433163416 415212903 132892263 82154837 949481092 319128120 996819207 192585269 7676728 881073348 322115842 660208212 692915467 83007317 549695195 933673146 585361964 679925628 823902031 320926612 820353504 533413637 863065348 994135832 149308105 40149334 731464755 257719066 82641283 175000788 299748375 331143201 410401554 911282372 964661606 398277207 300892680 860558260 733560581 441173760 636155219 462296518 377166622 500191287 263264944 593571793 568063346 515099947 867537021 278500982 135902129 91175728 7335311 66365939 729242559 700467674 120318480 957782514 208052763 950343971 966926317 639195157 26132243 698108769 609211297 474987530 665142077 999081498 259636522 678792510 887209170 211229632 684950876 117573542 334374173 351656682 835061510 282880856 581775644 739743214 163440914 779208550 903345877 686623765 767216823 155750273 166301072 486422257 197981325 804260816 855505567 921458432 922501794 151028048 240620795 95347136 83457764 195862781 78374317 493204385 209086050 511743700 184717295 847996774 159968742 404311080 997870264 451739968 71039593 145540891 332672859 648875192 180130721 900348779 852449141 516828835 79460504 948224504 552592113 928045102 615399282 88489236 343692089 259652264 325068218 619581271 878919454 354563838 682571827 790205538 974128455 835905214 122674 682331910 51271391 167406768 57310152 136625761 935178066 718570817 262158533 338116442 306923683 526372658 960507949 351610818 945273798 238577658 257559784 705595120 323752054 434107809 486157285 782074415 954702704 462442083 693569092 899006237 600661763 763853586 927535419 864569828 457397761 365220857 389093058 557589500 474768480 669596747 353831488 60758280 298500470 970246215 142917216 750760432 845324422 192757541 91488947 898745452 147678708 75131505 757937422 781378816 465825155 920044144 280696751 685734223 747258283 791168347 892840643 733857982 999118545 552075214 431745403 188050397 521707029 594766833 121395401 365357666 484194602 390679977 381117903 774184346 134739241 888051489 143832571 692400193 217829835 87547903 499162698 337323629 731155404 998765852 296501159 204541804 877005606 446902144 692772642 214289162 702496011 958712886 836437292 564955343 353158293 181707913 70703799 310373568 4241640 839504182 695197988 865141881 953486977 81886993 385837870 900766854 666147563 526999281 936965472 262112573 476699572 97712796 581157094 332329412 979913930 6785749 946724270 388949227 617066951 146480187 725030494 484275362 420897390 430702674 741541781 887080164 557497514 259613344 339636363 572253320 226535542 825283160 89974366 677990014 555214969 131571399 437799324 390941482 477641893 64998537 580875641 288635183 889579268 739581209 235075826 584204953 657745375 917828118 540641754 201398860 51787848 628003957 28756721 949050083 966169951 701556126 3342426 865991654 245262346 23233364 728523275 302141637 191571036 107669517 782815662 531715918 335551578 740570960 681264044 768854954 256550991 397548221 384998149 560396563 587744238 936323642 251873057 417082833 531342160 47580123 797616332 693024335 723325702 221762803 589187811 495742090 518534837 274821698 881090252 534774830 715273585 453461101 851720621 667887875 68877020 61517388 321244001 445914751 943213503 434487661 662760601 38654463 829615626 744526679 68565376 849618029 583879932 780457601 767552818 371851103 356432241 301050747 767452684 555400498 559061489 126661222 46935219 250927768 767572643 958946954 592315298 814455616 530727670 99141707 336947199 279916636 996629679 25953011 306973611 938136283 572793605 543201974 101198301 97070702 152892453 299127644 227361196 979802426 938847853 939781322 298231433 963947607 242914010 525557369 62909273 525071734 382772603 244178785 620574310 388195341 63996831 284757809 916486952 749780674 230641668 378752960 435947540 206719765 43333104 231265838 6118705 186885500 556022786 156611346 826459412 640474794 133818069 184709887 621642813 937908223 316411844 763441864 27942301 134862024 466455526 127572382 454916366 264747854 139752499 560655527 237309758 817268151 939949800 519999621 689999768 517304192 828153911 940571545 208105592 387260820 319614702 323158583 65704086 683834082 534522553 840600800 180938483 265277510 412108896 364241008 638454451 138913111 982239612 691283600 950655843 576554071 690762228 467168883 31576945 532026999 828347504 438826970 539622614 673068319 393447897 445524515 981075738 640324635 383582936 873508517 503027207 862277123 929175720 417271290 938027465 620644787 530734087 747215296 668915824 354555843 255386815 406373713 591852590 771355410 840994044 734131953 46956961 789781230 448870196 413016949 941083134 254993504 443051003 873448052 892809451 605637263 326991933 739953343 843079817 308119484 46828267 856122664 125469313 976404634 937062599 225645086 387601146 184424561 234527526 25849095 645175497 897113149 619474871 942619557 185048988 204094542 16244465 474275096 971659905 913809622 879999880 222726616 462959723 90092527 88543905 625732132 571482191 116998236 470465098 7051070 708877655 835146647 297038609 789024461 374191557 113173379 695207521 975276386 786369693 461553852 237650110 848602207 425872391 270387369 829035109 816335750 662749788 323362036 161027858 367221195 364011865 770953790 735900185 867738601 48186269 959339578 999420356 709960573 807808304 538907405 354056630 867855982 92877228 299487341 889326855 269493108 101581551 642121987 644132308 928381386 856362613 791128613 59135865 650449324 907323410 544682658 13191091 321946502 260125266 541099594 175234467 648400427 924053943 490438705 345118388 178902825 578221763 74934673 828414297 946276825 353101594 272716040 633239216 534806512 316201670 858555843 868799675 875818510 950956794 584747984 61097728 920664628 180432815 238320190 151031010 959073903 70787595 590709122 713178525 193855768 563938407 431044383 464633356 372260552 259899651 926037625 69051167 954963539 1921098 258311428 630356990 391927368 572561948 29819173 417038519 32773498 955919285 328268020 379491347 128554512 687978283 932522361 46667292 739558813 341102784 990016433 61949175 942666113 239723377 635202357 730554456 702591610 369718574 136752665 691471935 932061769 378592615 211310659 382333343 684378547 263055573 458227422 917252705 909253197 349643872 40408835 71406262 630684235 728337925 510883833 711962514 343550028 314980195 602672655 945803283 683585473 45888638 761972386 43746987 568339833 924221751 72086346 709177393 358676846 36631195 726316471 705358465 969389497 554143476 600128964 317967129 917198574 848460349 668940666 929882943 289963579 17110674 937023416 635353993 433034614 526286498 332548967 499041133 226415805 69341299 707439926 654777182 360486121 983558370 300255793 723858544 992324597 107662577 46738140 526680777 375619653 856800426 467076292 917132488 220921831 325343187 316240658 508709758 422013056 703622965 804425668 274203806 79051923 58528422 120983648 900233637 435771819 306540515 848452178 502567827 36131938 627146888 360649974 12894432 235494730 536170054 212795961 410772284 796313562 292933042 923301145 65792387 133073288 172745820 723888568 661033292 453789596 643665832 315113704 739900759 395691496 75474281 661487799 9279578 803297372 665376155 190586891 321876081 804849371 660483095 619580930 557888376 284212264 192319901 463134338 402262682 457592266 116568115 262216123 569841699 915434246 160857151 2012195 310291336 262206540 662121506 215118100 86638353 981036510 51727342 861114811 808209271 853035991 941958733 886484279 420709803 177299817 574832235 933783350 284283407 421791051 720418704 273397415 110464577 193741845 282730964 302419697 321612996 578853267 285123120 379459989 972014748 731981149 980727835 7091830 614608643 494572737 82224075 438698301 332446748 199768734 952796485 907964418 604178329 286486800 998172959 397344774 344213608 538896514 692531099 214766134 190158291 670827184 943617478 125416308 284952703 686526892 177300561 597029809 996115444 496831733 254328402 78139089 942021413 700676829 80202908 644482594 406412518 309038686 746731460 35184845 829468520 144486341 405094252 531859260 854421146 248121070 659200564 666107121 525588382 918982220 342207470 490157633 670870911 104814690 904438053 804303825 51695494 86629087 420380654 166538479 397413363 678107042 301565290 878052220 110083247 231988013 486474087 233198569 186771170 738292242 722813210 951524553 964692032 334444195 756508990 72814200 575590170 213023941 890919043 150830171 956371989 318579236 453760480 195543076 48711026 275650732 89729402 360805129 567357314 161953098 520192825 363081661 13766531 849391923 100661701 748119184 600729971 83037118 355948472 299732739 384668328 403277752 793697114 924851583 509514452 723991333 556884379 749305331 233578363 729926144 46478790 581172568 496243143 120333785 452496306 478091591 924039312 505129477 763739499 671250415 509624510 962324312 35632656 339853712 934504584 131377442 238927763 136651111 496380663 178797906 571543557 590304228 288839077 651441429 583759486 930812416 741557553 238165996 625305494 189213650 468330589 527607976 919669934 994379055 763982399 509092119 721237486 252833265 207275028 401959105 931536242 173646305 102819505 302805224 337312698 831338976 117819002 552278284 306544449 175787518 910442211 122974016 915566894 123339890 886560501 735601143 173817112 6322399 558884905 701420254 299296117 853876528 485000247 788899642 644662202 311003932 383690591 136925150 896707152 212275010 946675165 543944600 515189895 88500867 87268958 620439835 787556429 489527774 318414929 986144122 499350636 451358147 661589446 106541626 201165657 590841386 681538093 88773258 700071203 306817418 541671440 100062454 247925954 758943030 944517448 508718911 246768513 6335963 598710843 354482923 616714040 306506089 988337329 597384521 956451866 578615018 252740055 748669500 540657450 745339917 354373019 655924096 314779598 698636559 457251699 127573029 131977212 59774878 336501225 176651596 700142090 724860792 39973851 319021885 718959759 704352923 810323447 892211260 892661596 174899817 622322153 539239209 762638142 396726261 872936716 516448454 916223060 587280870 576818049 981975813 855481359 46442278 496712783 507160465 865474641 105955865 861937705 229433715 966515645 549328395 614961071 874166824 196641203 986614068 589640347 334009942 673593913 198905876 520438371 760827614 472546646 431389995 835318643 943253481 784662644 11020556 464356487 194449654 267038060 153477802 770004928 75473072 420873057 28809767 932200817 2723923 564246521 93185474 155398354 31976707 725505764 447427614 500963279 540615287 199780033 319294692 535401662 159694012 99690368 192693776 713436173 284909282 361414825 824564032 170502859 321621185 26176158 595011508 230266696 982628824 31297051 355001367 634373955 61135885 493811004 671626829 764011605 270548614 590229851 57538520 92783890 873881478 999264605 579350691 100746232 933205248 107280956 547332378 33905363 189542708 489956732 477430495 127090119 173880366 895186459 779404550 415549803 699832989 192112367 490529399 854256207 848124302 105807448 724496847 707581262 179954367 41446074 421290147 327595325 746891290 970573132 506074411 15242504 870322674 876079274 654479073 944640729 539699419 824250093 442172830 663639525 606152411 945037088 716207932 126377756 691073356 176531708 849413371 751685546 621760418 674020935 297602774 896373325 847894137 482389170 699732873 498058947 763140859 405141620 317868696 167300045 39410138 258551850 198415368 594185458 314461498 207868555 258737192 797262415 772541598 412636302 663201526 661588778 431104088 332416469 368588047 519845360 180991994 405776874 84312141 383744478 56803154 501944661 310941320 55790892 548768855 289278316 527388041 944425374 745907951 709247456 943308637 40269876 569192411 139502760 331571560 607931198 664065596 189757571 349210968 680685827 768294442 211119093 705930638 619560637 110698716 140553160 599432211 944357958 981498589 161693470 957422262 821003256 151120928 412279677 688804118 546277583 609248677 426502145 988205564 652249713 541464401 257644381 642168308 817446558 577601265 474810035 2095111 250417967 351324322 443950197 889575283 669409934 525719980 9263365 498573305 679125446 731440489 47054090 535751065 253653585 514148499 914262341 841896161 899306318 694215371 259581872 386226277 178902567 176123654 285468035 295859403 127324154 66905782 945003693 152583931 568946065 334063430 43126526 270290726 399009674 585494969 613102174 99259680 839196468 400449518 921116721 720367333 931379230 552855427 907999155 450474967 182546102 845703854 753855579 675944437 215180122 39045236 476581943 208560332 121718419 225412940 8736764 234535301 498721117 233332946 980076523 345948027 741256475 215753505 928329955 262915049 901418180 246257432 692339413 691294992 313875450 175550704 132455359 669017793 976991400 928737530 429817090 64826526 516740400 715570276 18062829 225254663 739231057 138339461 316634958 919342816 381085285 312527214 127741710 60782297 714425004 907257733 20179532 330312367 80178158 701460255 813341450 465429099 307116233 188909103 813467198 301543660 630873092 460447245 69371536 980642279 994619606 102382417 351976111 516398507 764671100 619614724 687809554 457852566 413774322 129164539 938345057 500513572 69579419 294482908 323505220 961165345 989524482 716390934 213924622 559885444 459823994 616014739 910093390 50598681 275138991 624257130 322055842 91525147 242545803 785482701 822493818 557822709 339034754 458091483 837047271 951383870 331979674 716180175 664091999 136562707 996342446 983971738 718074027 196053776 887198518 606632843 245958127 930685451 395910995 125213754 484525124 977940517 574164274 660049154 342454639 557159281 140968276 992908241 835059868 806973502 103938343 216612949 397610263 835755084 234655104 91001660 103431658 182893642 5504625 428366968 116026434 682852908 612464264 162199472 6874084 629774228 607508745 622563272 919585339 357182037 732014174 238378355 304997092 664565901 914359483 650131420 711797676 645244323 686009998 180897368 442306593 263858459 115998637 158966703 487510478 769770284 496458143 327535619 644047750 684439736 65313508 329132966 521918478 496526660 952632793 793480293 924694593 677899687 478827570 428021676 562916353 241645401 952061014 586802073 814468219 263657996 295707458 597853651 792502001 613033295 239690448 593494878 496043574 285028914 63915301 825223603 927418225 635462170 421496435 589512751 329076117 128372469 462944718 843289186 656005584 403686131 741525254 687066105 258678227 464177890 530310569 15440798 587496715 924300663 713790940 584631487 274267986 143331683 553694392 488330413 201649254 213200143 122242933 971111651 960928934 505452818 646068616 208895273 363716350 895660154 355624891 712429218 809163533 260648291 924784517 664586193 250055422 205963197 700596024 832460408 422492096 462803679 870004094 206516764 97925426 628661565 320154047 661453138 496385708 950583745 953118858 108291079 723088663 805239248 29321111 209216547 475278912 558843355 588267114 562396368 530205901 592181189 152429944 318963442 745530814 664113900 809878787 429444429 722883407 51478633 976860361 999410122 415718379 280497361 412370952 13220482 292514077 762476501 868327800 703617746 124963889 6568104 996745432 92828116 634256671 566290951 879433185 470740171 47020288 470790418 463461348 880909779 809594373 296894560 209054004 529439428 858071300 972020396 896481851 297599528 434316473 278929227 448969016 281014111 15923607 449156841 289439524 961902766 581002932 500098830 592674636 259744825 768777934 270665833 862826570 832475905 385881250 978123315 306505850 225160838 151447798 471761477 21220506 177529603 823657261 695580517 968487379 104961054 76794505 713827576 608401272 98579461 864639086 574359937 902791612 467411963 652745245 201877019 380048731 54673780 472001379 865025861 228154447 871353262 615309100 689538558 464464567 630137180 829902216 627656803 5657504 8037288 169181362 200992442 15261461 735526819 640262634 912023946 846722410 647082835 885695183 692269186 915193356 905316463 812328278 996636705 733636213 13000140 388571640 847502811 32388957 285425846 591393610 606420517 739088200 65477865 934577992 491778708 640315236 608196809 470639539 706789465 99511179 860962712 469397409 109436231 702920850 617478002 465133305 814557922 448399101 724819070 258207504 939996757 283025397 47195380 809825548 890294920 33812629 791796694 349607054 949968734 860266280 406133199 881310175 273831317 195399973 465624076 175026 343007566 787807513 540818408 105833979 539841258 911008725 716188814 832691588 894290985 378731215 893921994 576100001 709252011 840207520 694064186 400288727 255741496 602053367 188205885 366555057 549501942 788382961 51380121 741544173 788211540 490297418 553834046 973808724 692287285 675151551 235378565 961951314 351745278 515960640 388502594 763583913 741002134 96126118 258479375 314724023 873417079 972900155 469578518 17666093 253476811 383018216 460875873 214917561 642399142 357746700 846068953 669154938 347271971 925099136 661096467 574665150 820902892 974236182 794316048 759096407 122009693 483865444 176355378 328520288 938072637 806877095 934051603 366322880 44383317 921833903 104293195 809200953 8206870 97482068 4056089 256781390 262251423 189734474 614637190 29357907 439924281 664464422 143790635 513224081 817557944 457849439 153044122 48423177 978677961 332562926 454151655 53027922 559217049 190017363 198419638 33624391 603678794 245095764 464655070 714661940 389387405 580640206 11976263 214468256 359918465 125592656 367162899 303874904 289324635 387219077 795737698 895248508 148068207 493130980 589659406 255114481 29964074 320317168 496754378 828345597 359384978 21501136 108429454 657095532 598097404 579674598 889220957 772217818 636481760 501163048 50628319 632470235 451752802 372701610 423204628 927716191 885543273 527402308 946055173 491599610 576003279 30845267 804595964 496116789 895071472 130622262 653820811 457601170 988640401 363179608 633920568 548427050 579807053 848871193 786430443 943798638 663143440 349643847 960095155 263730123 845026691 807891965 576866155 538035242 754287555 153116157 957393811 249189479 455963789 427968245 359858246 323604371 899637470 997882663 99132304 426244135 561867038 77875658 52053243 638717569 760712795 93257763 992536409 342650068 400646154 446795128 915982166 892921462 700040531 136728980 242130271 341501405 61749605 158525091 639477792 371830806 216002521 940066912 568699961 74715401 608293536 275601646 657154942 73791470 140432392 618170212 360604821 958739606 868586229 629686518 534452849 287188471 337411992 603003563 569964332 375743341 539828889 25523775 498291077 532126274 499455142 29058483 595299554 243554165 171770777 939473063 882134035 579670140 195254728 47624968 277281276 936747701 381438631 686785317 408374338 132730710 352316660 942504789 256290399 560082836 182842735 247780014 725349883 860273823 120914951 290966411 668280024 892854107 464339973 662521154 690435966 352293171 118652702 334283702 841395480 288949369 118099176 163461467 785013760 260015966 874105250 379274634 614160283 298182174 262201851 450897707 342520389 356007192 17334058 890705445 565571414 580256213 487313158 185209428 27680092 593239144 877544263 273076087 463053241 781690501 849482361 483876020 403772243 993044439 92600506 649844790 177583698 766391608 769863937 968926838 246205286 978344868 55174081 468818236 589190507 69546753 977041688 437508918 493490040 527083564 545855354 52146613 2361199 122046642 852335594 917761731 42035985 174167332 199189399 685755074 195701821 742124514 892106617 473755779 878252325 661610833 230413374 297665738 361218468 323974330 737485490 8609483 265639201 971282451 978060792 613079554 420614292 100998482 260645705 458961697 191194535 273593463 315429651 150437237 12284301 106119824 134272838 872310931 33620252 335205092 481914153 989862453 926683361 997257729 298420802 995178031 349071043 289995652 849219178 68018993 866928683 445038495 640872967 71311975 233317277 514314998 748234573 979236229 745553096 92442526 129728196 645511213 136111763 19825047 456929576 419185195 414863616 718122397 170009271 438676097 402695134 795525928 509168448 457704612 500868831 595551911 20693980 412055012 519918940 179022283 446964763 394069110 261595169 984019755 153525040 736385126 369723411 205734108 258638178 29758630 394013428 261185642 172585194 922333973 107622674 89087625 630645346 817636735 436319379 537810788 783044307 993300345 605140144 810260439 611465313 481838835 714910533 9691602 174957471 823800862 787295317 431780285 480369046 775488842 134634762 573539355 491706005 111178249 685464225 249317432 152051103 428368926 469821604 384185 301000227 579448251 336940799 87721037 485045360 557629578 704545938 783499936 977724597 890371827 692327071 588786380 70497247 828138630 450928683 876901213 350709763 624293629 216522278 965846219 917330398 966712604 385000372 729177812 281991596 853864038 823541663 391619243 192999001 570262838 736856551 438128654 327636271 504374369 636272181 787319675 439686695 235935748 951593451 361843969 229589385 65262425 966902160 627212138 88260536 975483226 49959898 500744229 853951975 426782772 437219965 569259748 139400804 708521581 605776667 520256182 544374243 845669918 637198354 688831540 837107651 211627764 682125847 411553605 263350727 217588854 703063894 816486524 561059171 19513346 70206742 100587574 349520808 881279902 153144460 202685588 329267085 187624536 857154350 777895742 7240166 76046269 231832146 539262358 909383498 144757252 144997046 284811121 306130255 857644985 374874178 30993896 722627188 355831278 837832978 524965129 961407031 607496830 22207724 861301320 760852013 731415118 362973525 853089311 858355024 460782369 369595442 201039772 154298683 40487676 299881221 301522159 406166520 890052914 539390406 797578038 318114215 925941758 841171521 213479329 438704961 169148720 688307447 997051131 253855639 879284222 848198841 362797105 259812804 624030849 142322579 977328628 387303864 631148714 641586249 845506876 248750146 171185838 797224572 283907197 646079222 691557072 180295122 253869712 154202735 58437424 570713641 596833216 941137826 701743734 100583664 636709942 829508107 536475247 580329374 2053765 506083646 810909458 811659612 96265203 407330 593689186 937799873 989963311 642923956 447811848 989901218 51607066 550591920 516429577 271852938 303173596 783719207 981351352 677662130 111308206 827517694 297464804 907310025 107200246 706927330 528516886 567680695 200296027 233005428 149240682 286241652 163323142 965152549 419990735 790223496 506529669 424435841 454451954 157709783 246084607 160819822 305250566 296902197 799414848 115668817 364698196 355199534 604438150 47839305 543965765 695579246 656988703 421692973 211893526 429751972 132040598 307906308 660421946 127225941 557075014 867170397 569925840 251026050 577924361 129574017 498941757 890985154 387491810 550406406 715589522 831435532 832844563 630318217 563929931 237258763 556832267 978703063 333863384 605869846 877172433 165973912 12260068 800577262 571259684 27609990 939038013 376483795 440987198 718007208 14712351 629475307 329486937 975363657 69490446 646611625 268664208 257296160 486283537 99207842 479117107 773059087 916305550 432173834 701344232 148466570 179090767 635911767 176058402 892563895 887667761 53322673 703735023 80813223 42642424 589390018 361904261 528301335 866344477 948048766 663917644 76884607 127654042 172863096 231591755 44194336 505633602 442460814 65604891 321240032 64435738 666539600 384431770 43304321 40366872 807399086 362616543 570549257 782750755 874746464 135912391 784943642 111542648 506688611 75052139 31025232 989790679 236765973 313765843 246939826 676023179 357916806 588886924 50532384 221231927 60305906 940111834 764881527 435383110 942400230 563619183 902303728 196882179 775918043 3780897 194020813 611526240 127233822 787204966 529253926 631293642 115018434 271036730 908565595 544528043 20542666 390992303 123271785 115624586 640308276 860439373 989184171 285044969 362798704 335066809 198345454 262285804 770263922 276088419 118961187 46433159 908921589 276923515 594722166 527779070 163018239 500755045 787548129 979575562 186508403 304855692 224113767 123310047 591313253 502269040 965302879 551840740 895774933 25580701 747640281 742216724 42600728 981184358 536632363 372025340 653144799 606294067 972871450 138711484 827523272 627308396 612375456 120968767 568869314 223600182 530718675 399473421 271673470 656212730 588389736 231287864 689107664 85947845 881223752 574561014 870538308 118145319 710582213 687592809 777557226 302380103 913224484 948122814 224211614 157685317 937947380 262699478 566639264 232327406 459072206 701897451 147558517 889202498 732585215 165531927 508470250 135518833 295085457 917168994 373057471 112553487 765152880 871301774 303330287 992398578 966011088 496509507 176638990 714936779 854166808 170386003 252352002 456657220 122362240 22356335 382706080 202983539 33603741 505213220 882951500 554770173 360403898 732394236 456833420 460384301 265813403 748866223 351404516 389962072 986361950 221857161 761347757 403163970 393955530 109681637 30357580 320005048 108437669 176124419 394618281 49103084 302857063 916502598 698260234 402107062 643959896 967494425 174500327 611448112 532403543 633535716 840804879 573362783 54147815 885186040 371214504 359354347 291483281 899378171 883748266 700689167 510395842 673250303 793254688 385951865 778171505 811532781 901150678 818820388 287304598 251089539 818856699 802138237 141029971 22715389 414072094 510621196 162834874 714566609 544915684 662593035 113270141 971008693 96117043 261255424 756680956 720630503 757051742 668342244 988984045 542214603 147861128 787719704 341705821 363841349 23020412 722568834 447056231 506846593 525102855 381126386 485294852 244671831 537170689 606490689 318139583 952609178 153988777 208168772 123000563 942901075 302591331 90772205 603962761 858247977 502974051 696330440 450268367 117504762 914724870 620647078 126217986 181774670 70887524 186573380 900286041 792773844 233191056 248244994 391526646 63272985 896419447 455737225 678849600 378477590 797693045 669985643 336702575 234171088 853839285 495961273 896977218 20002256 443122883 956761273 690535642 959591954 669916762 808148872 227177592 770620809 740961346 112492576 547679911 464808226 505369832 628840695 469986669 789894095 16716801 842428661 173633322 585554580 50911253 297334132 783249881 787397369 977057932 346485181 155172758 447974707 875316676 225176980 209064230 942954363 126895658 148814836 329650724 276125587 860714713 750814149 87923347 631675234 189936312 420587491 885687574 643763975 86912865 785239385 917087047 625394426 956786892 7580319 650459869 546426162 337062816 108832291 662712124 782951610 768419618 4124714 152803189 232243824 86330628 681206671 434334579 909686181 609875804 32800868 290953567 909935011 617044135 726805200 598268110 914808955 858673267 401528645 446240258 967536173 923903923 832933574 413586045 349467041 583802003 658325895 481240900 420353354 572575885 368393168 149422055 820993729 807031863 151591764 603289203 481553532 977592862 683865666 989191145 237095793 114168894 109467711 734790746 137455427 194853132 355918691 368279858 583314552 912280530 277245905 361962368 641905014 515333480 782324369 666682618 428368216 946208804 443295079 954041100 854754282 256962466 727531828 828916157 465640179 618848090 958555163 822270157 166063527 36606038 805373944 416811544 701481624 548905483 67192355 742467419 477547732 223829223 640206125 108712921 266292760 283170384 149450891 440030193 726428393 319905450 233311654 512236814 759886938 765982952 815040983 262057707 964829395 898986943 314384524 776791040 705632503 86386922 482951833 222474142 142783053 148176983 982523404 251374140 373426946 756649523 921951870 190577585 33511544 799220030 426957827 513960449 856296655 785228208 158504036 551777873 68857588 433167447 320418744 767789960 792500813 436904924 874289585 655340998 535750484 748548317 57530030 87137019 610020077 175513956 603212375 415282952 934727145 226779317 718351366 749207171 19028560 319083948 286014563 677776929 813283389 759904095 544416825 817128493 762255863 888960964 577810024 710367748 418041310 373779270 918709027 32401167 250359688 330454035 13243365 759063051 73538019 109858678 38079042 597710218 206296391 497086200 136174548 265805993 138736292 68248651 205748156 746773725 534571856 864031868 409549825 781378505 655606429 20394217 898578352 903775197 370576198 611769355 184256050 264495032 874069339 865814880 606540654 294248873 7764131 978494199 373624404 63768515 136627158 803587024 410031916 346222271 138083856 291308479 7315484 661031795 332843386 918981549 923395678 252511478 261505248 922448113 756121696 810518800 344854772 403455731 752452665 228290651 163662376 427216032 289940869 131377682 871916792 556171781 57992228 824443274 949599003 641202269 803365964 690619206 864485189 629283725 43373160 771489521 92171492 234809982 517206554 304705372 605553080 130215857 804225909 505312720 289959844 154149249 29265299 464825257 446333854 712863369 931659748 493725309 480651850 959504007 98571088 144672539 679718484 429710994 657936689 520253848 146318464 605614326 999612501 586021433 26402104 990011023 906077211 931021834 672105993 661070528 762608838 273377503 128786354 882968324 752723386 788474161 675767447 445311518 108349290 966920019 705953121 208243570 968210397 14332502 894761341 19237697 566124090 328692841 207013792 873474573 155373539 855632462 630303929 569738069 110353003 412750396 479876606 949358947 999505435 996472428 588126919 672325321 323421441 998212284 209950359 479439259 787905518 674832473 83225332 389375531 142451018 710685683 643733368 966940622 17004193 578541354 138047987 481263198 975208055 771282275 697186195 302265504 105107244 622863207 866293093 612154832 973603486 276706436 144525768 89242027 570642024 261071260 512926238 51220167 465190064 141755553 690427977 648646270 717341937 68765074 150845248 881084615 424199129 136744223 663890625 87770225 798280235 32770778 673440570 326121623 628847033 615851835 639868533 495709996 773252452 627143236 986518826 78705241 781393347 776597207 286931925 316894663 39655363 955928622 716295295 71686079 77237243 828233501 571474107 497155998 388726170 934406535 673179938 235667057 885035510 827474246 568732447 280966975 654199343 796289354 846410593 374053538 351506431 321119038 679530893 602000690 75728235 595878796 337276159 204202385 512951626 744614914 531403675 180318025 436839493 801938585 105657488 826940266 508661343 843856424 159611924 157080769 204088150 980549043 325831948 664118714 543883265 837872 524351881 842684520 800195627 256503755 652040475 690886620 421316422 828878898 244122772 172772698 622186168 935313733 594307101 974542056 339920369 106189316 678396912 987541190 242700981 612376251 82925887 869965106 332598887 895055241 676877529 79798242 552186849 467466169 114457832 785379404 965795906 227587445 97337516 676631722 630339441 623152014 883132689 480860926 174374680 399848369 921275489 782806993 917215810 606952442 124948937 418103555 126382093 584601265 442768650 594734272 353113988 341034395 808178232 973866811 70544314 847218792 574201507 460993503 269972988 679307486 900852042 572614897 530495696 911898386 639782233 367932338 53293726 489373268 975827108 712885027 435824040 401959158 769359561 991692816 231239861 590472453 540384649 413392965 859302443 353316310 694288112 343676998 949384800 701412290 84881977 210295429 279375047 640602154 710337525 603724419 106285721 954113336 927269641 319476019 473041905 187851473 467620460 734772130 608139085 127995394 139272261 398759448 425382101 614390963 315317203 348149972 391087292 174089641 400110216 956574185 284557020 535435211 378534406 656975789 885797415 589415647 719870790 412716875 608599044 848608005 601517443 241225165 581055768 945161163 665183887 746817573 472761576 61537858 296571434 761471633 429939996 434298807 974704649 922640960 396617815 377432665 118555742 852742240 766849313 78566909 984924727 631671021 136127666 126864078 630030935 950735642 98398358 308536204 164424144 854415548 525671629 816851279 361545810 296742363 339907915 412421522 358605227 188763919 516173201 257038457 113028519 172405389 935738240 366442798 776104974 5248471 794718648 649130408 169901915 959961674 543858563 787400603 310363240 663056314 775805539 833614302 228966769 330448372 200979323 246189561 61639118 680821058 360548859 509613746 503613755 528831984 758892344 49190950 485404069 536345040 452825355 364193633 324097017 37902000 847075400 188822766 341692029 168161975 833021308 45657919 196769839 185111746 784386219 746248460 928705585 884039878 786778524 284203307 915191004 832436957 921939364 662564804 203683143 230208741 919040125 993970759 277614765 682013437 707210594 705781802 344581145 253135368 856263320 141454619 876430074 469295166 942962633 908550721 758536425 343938024 851879903 845053437 991527073 32120858 530863136 887686462 792374292 936198234 486022240 29255933 643099328 629194124 443877277 541875168 567192040 913775820 762810794 398815421 818808128 398334091 737356360 263225633 786703850 142232219 448203868 746210172 561446663 917562124 819520964 364947218 719758333 788073962 862372746 657830806 411228229 899705062 67398839 106733059 855252507 944278042 512580909 170992787 935180935 407774623 989381245 7185289 940461423 422704279 70008324 74563685 797114686 735313863 455451107 354299516 737846226 823042358 747869022 66362937 570379393 123389415 147350349 811641398 289436337 276193202 772887454 589788093 697933085 150795572 984400797 827394560 630729323 655554637 536985973 988290747 637607724 264666384 969042783 135214411 485172314 251576301 253825348 905483434 640307470 672769220 826449731 487269127 596794505 10607398 793110429 170152436 172311226 967026291 929924690 272655967 147120583 807771103 45899308 345239311 138473269 869883335 672580841 946734694 769376561 95231141 392239300 138963230 239828989 846833091 738368413 785963349 615039199 543700962 189840301 221308311 273375432 7048065 770676742 163066969 278778997 458549045 855155713 69428229 50428225 176434572 653674414 681167679 518321398 915598899 673312265 376806830 949253750 974722026 658920661 509012134 543671892 447341190 566475912 716805168 355454754 210612949 783216835 576116644 738981167 596535348 884173958 915003558 290290931 534574876 619384891 569602166 323561486 434920146 575533956 762996545 374911951 698372241 566256979 631457584 401275673 208612082 507187592 829151965 818317019 628619322 831174700 898826184 722914423 589555518 516778804 559428933 508860201 20075099 139314594 708582925 543312162 941372533 615405540 525146419 751564640 603348083 306255420 726474695 749419547 822216758 921483201 197009678 350412033 347083893 620624556 490942269 11709191 97087695 815793972 489485710 457281307 737761705 607157044 898614552 471732626 154023630 796999850 994206430 508586394 818855145 876283558 481039106 196722978 186378842 247302684 372083770 942876580 484037023 840661555 527877567 548686393 408097967 559128040 163617879 249247548 532671840 199830248 939269203 635640133 768743406 542899686 250179531 274739626 540738417 435830366 261040365 846737033 119466474 645444012 298900553 321130066 714919240 509362183 613268754 800069214 303400230 69455792 344863726 55942282 836957077 895987910 512711267 597197441 820614811 208358669 463856482 831364045 859682293 471126431 139522211 16607301 303109537 901943774 53312003 551111537 892508498 700754105 530874939 174201928 744563688 353213940 527301423 270664650 643566923 359091982 978093339 865992691 403168543 521490311 440845258 792081132 702683053 297959932 631719471 47362884 117462502 462648986 860720857 766251645 925573301 515032615 159527481 452679663 277999991 799143781 863533962 36313138 889309735 368823957 840594414 735691741 146842697 354015620 419043348 849517488 861185442 616268388 716704285 621704235 202360134 422530577 728774663 336347540 501978836 259817477 106956126 220480306 79639921 561398003 255565486 445238162 315914922 442300320 674826576 895456090 850852108 76543022 865593868 23631582 806144487 32921619 732592259 18295866 523858238 298666152 120831562 639256416 165459291 150049299 182377520 195655249 116299801 596046447 277768158 624620503 260875858 311900653 406628237 477269624 798725182 321649395 857484603 507373796 398155274 561939307 717698254 880588135 572161250 334928470 775418513 613891431 616298265 57531195 849529402 869657539 131182295 450925334 339908045 847547967 950742152 162992766 36356353 194177311 516014701 438918589 546306237 370287514 715586263 350162511 810121503 390666385 911564701 355597645 406019133 857225365 612632088 293018517 792979179 180165886 680407228 517414836 852180496 21134408 255294731 750525157 483058552 983525358 888198047 374955034 883300578 72981511 377204148 599638447 421182227 826639601 289065258 806420281 38010735 607252145 425422807 874906621 589668607 435231040 444061835 769222145 98056867 240802286 81766416 451905736 891251054 319820205 707896277 183862898 223515746 536028152 854028325 373691062 334287732 637642457 359227578 496095038 663714933 524072982 241085294 741811453 124997831 804454826 350612659 988076976 324325521 286037525 151915778 364155156 803926269 338908098 312707397 664025676 150958768 667697932 748124137 266004761 70931130 288324534 345357964 348782596 385319283 417829597 819132165 160355200 950336812 771364308 160904670 951454403 799033365 976264509 421402355 923820044 146530823 264630026 584287288 496463562 645473989 20179299 173249610 272732242 312034491 136950726 362706945 430544624 713623225 476613232 437076069 936817014 832435740 48250004 135140470 907080663 645881629 809110210 529900778 909267183 930321466 473482294 503673633 996303091 705786327 666716756 895432939 626365989 796484147 949155492 42188763 760603794 239976275 976209400 544825200 193532056 663543925 443692871 570929913 169501698 685440577 238140979 578244022 525270861 816756052 384473363 758398955 709347595 442317573 153906695 34520546 12610240 849217774 186382995 677955110 331919665 392025346 45624943 161356714 144011059 154627622 504082024 746880301 46195525 598695445 435969761 717677027 830835714 488842783 324842497 596414565 114482031 633261627 827305902 434864254 594277761 807049181 733349954 483681482 51601429 399117846 206503794 161150262 272736642 301497935 932068197 823141168 470121955 434615776 369887534 592642681 401110162 262418338 393716253 277362330 303004139 947469629 192365020 734184839 659219422 90109623 453194045 823580738 277856276 653287363 279744020 129255290 357702145 116067084 811300419 969945021 436440524 245389060 199366920 888565029 154269645 656002697 131962217 31151049 774944066 976982854 101311098 907586202 775710041 344768064 296878151 648367243 224980370 88870145 583237195 842681025 817938825 532570501 721863645 181596118 67372559 58995523 307811034 227968822 167723795 839086415 296165424 840893147 484979086 250629355 107405263 814082099 920670739 899985147 345616794 442054099 366867235 347801137 421978803 267545510 996382141 986240203 889398974 327999089 387316818 799809555 560581146 739772732 768191439 682535188 828971101 749417145 574590661 243500684 664947669 107799616 314939127 89424508 142301556 447988123 362596388 96639354 299601566 538189869 225723459 455848755 997876873 996656310 1988040 207838166 627795691 296069760 18584936 272797762 624147733 921471154 126427298 215387458 754432180 931154373 939993746 786846618 384582174 460310327 631525113 66919436 986020381 67823893 551434478 449886197 806853016 371052716 706947093 535127252 856019216 396392876 289132778 213655645 396146237 14371613 941209525 402775477 422334139 933751636 240898635 292126471 427861017 988940719 918405545 947000837 766499086 791778556 458302722 393766643 638841245 755300361 453937444 841113300 306017721 356878482 344922820 590852611 268892260 333215813 217413890 858161006 123883457 2888877 266803092 37216006 920817664 977701939 757186305 366370149 542322649 58734638 192026679 742020135 235254339 353759897 250379004 488326837 800320189 474671881 982838050 21199476 403039772 819536261 559867684 392840765 483942069 703004914 596765599 401916714 209088056 862272265 394658319 291705305 42112881 910457164 293168120 593867143 745662279 792987771 632203118 247768857 66698301 733195536 897875507 581579878 285728818 238850963 118551771 566679497 329538607 837960987 784325952 649990386 437542398 740834305 892613965 236236429 285794913 545441688 277056378 589321047 239182971 687073027 928801451 76835119 80553009 621093699 447592181 121291530 546155898 297301332 379294564 99058685 175223399 40698651 288260022 506763791 471896098 297178141 444278082 475467434 922191556 626697942 331709191 165940101 514448134 229773752 802636947 420596016 549540683 776478290 160527700 890720360 925158600 65745860 817257649 312282843 966398821 720069353 621703782 180047654 179136658 803218 169064322 623495740 176574741 445215682 996048907 743799780 159504731 39395156 880058175 177894066 681879490 38773264 32100184 743738425 782557056 390108057 441822315 182944354 920255410 360855234 204507245 770759005 733350625 781010807 886150547 548210289 987693950 354218358 137417729 206001072 529880472 234816306 892553102 343746454 430251882 45571596 780320105 680163126 447532964 736447925 33540263 390441436 270381604 754999188 494037857 81467363 800867425 392603083 28899412 365227249 171416080 68466159 324724591 890122207 667531931 734113787 477959773 267067720 220659785 299341440 665938827 949161686 786035282 766787836 162037585 82574159 91268066 394862935 151450249 857819861 263550845 594043852 759992860 592055890 343606715 899610200 993351482 625910767 76519240 985014905 805495270 23745453 960094065 656132115 509206184 831361978 394810611 824365877 573915224 121759265 933121671 989119443 300980209 779376330 594097205 184581157 945430629 938040829 537039500 918132178 371231153 775141359 423476455 582808462 952246501 585261861 327012634 817054469 585788044 589857787 210638084 389122244 346421443 959948395 61789155 25703475 561232411 188871019 524111394 164026447 356636783 25491773 213039340 159596510 378322401 887287229 698038040 566531242 320055428 60476578 522548707 636274715 583508906 831797309 385549719 203959235 468485202 718656267 660741568 268784646 225531547 418671449 522623756 997189610 571628945 998107902 888204659 297717659 311970308 863004591 816140030 739134573 791529007 899936725 961010168 752919946 739332448 240108584 954965396 581974136 872363310 219690432 495504184 184057715 744723568 380136856 630849676 878175264 416574916 745649207 406128537 659938951 307054931 358169821 15407873 308696960 371528599 652631618 873540588 743784906 884290815 373390033 77193585 565690730 663379023 707390634 653098899 363755707 741297205 476629038 496114508 630932107 704595605 308780916 767323761 440967220 100760566 98436494 792534393 941089444 39038472 748581043 922072167 477407363 309883233 202795689 411012429 574850404 287175272 668249729 266556734 694604511 79800147 478680382 606788369 244071559 549502226 128725387 302060088 871905519 217790876 57658226 723569031 503840260 516392028 368945398 976748740 293805431 415674184 628579667 796559418 499563562 774401140 182805569 923495829 478041422 889304425 892731566 105269050 700801066 67455651 300974581 934481939 157306151 81463756 453914457 441699975 475485448 867905771 247643052 815176744 156246462 590106764 912324607 12570671 315330607 433798248 581522824 835374787 400508047 201161698 867580237 739005684 95678352 400647641 42976726 373493714 913070170 389680947 593308808 927493843 973575713 152903278 162195441 924938962 522671927 287867702 231275131 618944936 470238351 6134370 954422854 964260718 353427284 539377457 417190923 462526611 826678053 656629091 555124277 291401188 711657217 690158034 198436482 674547495 699777921 258777289 288387332 158225875 281840154 324258221 997975067 649616248 533414881 536540419 221198623 943737400 937855845 528164016 303518349 14982555 132081291 453786674 382732908 876592598 845245101 175782310 494553678 432843954 613081285 749585763 945923290 527336089 432022711 795828409 94179433 233964103 318829942 913684883 501343726 395113247 220155120 340215978 388637107 431358419 953655214 457365386 985215980 795095410 750314621 317759002 369397271 231121155 771376719 207850351 887241551 681673867 119661707 418498324 24205965 547420488 271616991 931726408 951372003 298242684 772742514 87846117 252850577 943527544 819737559 712902715 205876857 28955631 982244367 463218918 21028804 438848219 562822925 177760794 918326644 944335726 185804562 958929758 46653973 141408033 481511915 965747549 331787847 427103362 490290024 707922917 406124904 896039914 95441278 901580319 247672156 802963814 770551822 115371702 136425057 151381145 225776407 593595854 330970018 13231637 967495110 663936600 759921104 497585648 241411857 114984394 890306929 951349117 583012195 737961629 912198971 508768496 122962812 379982563 920510544 688588098 970434207 303279542 47692856 895186664 727299386 878325416 882802455 763513428 417300935 33239676 454285034 977756315 902897026 471630284 359321753 753070377 178407118 447396068 902729650 572498288 301712137 379402938 774475464 537993489 36304151 255626159 658570356 354378102 523549113 226460431 428961993 964525468 505640863 131430811 364178381 338052775 606897085 347701887 646642431 191340177 693723101 302926695 983056761 192343561 961008057 186210292 257203858 864153037 601100569 362662112 237627216 439711420 616479307 737218585 135570668 990130528 579969680 81869084 804046047 211250467 820684654 191855236 85028489 804958705 529102829 682811246 359269887 872513965 72188313 1903470 443048740 173270420 508232511 77128701 688991213 238012732 763242210 653108549 649993011 554790571 403824006 323134867 28272873 625796873 290726193 821550632 117179289 574559339 996280334 527143897 512651900 630973531 121131212 991435813 233284283 624016372 734559601 497366331 173922991 821731317 193256529 344149714 390136652 902316155 547489801 810895897 890350549 460612130 784651451 929804897 746561712 911109338 631945901 869408058 265016372 641523163 393566623 207505196 463925976 672568144 477363691 61782263 309847090 791675209 597235315 218429481 571300994 390792112 263867020 988165998 203586243 439961048 591321857 621118504 68878116 20777771 240318181 512059477 485813471 844963387 522744912 892946351 247634251 81240793 997432701 172438179 953930347 443589183 181986871 274140821 37576895 209561108 111673444 584010315 692998918 396626728 845056236 557956547 450591451 544091228 868591317 347022438 238199952 372031051 453855094 787725756 975297286 192870787 750736598 494787000 261650152 425538080 754825732 567166756 899463512 704307716 413686077 242660504 495100008 499264198 747274041 397543250 338997491 586966438 336207329 259545479 752989606 988842551 892534744 848997082 595248165 828406715 365962335 780222682 763464946 348565640 309279535 106307878 59722254 178831480 663958520 153916786 3440092 253775067 694930685 885516284 430530628 583566838 309400742 5346325 694410943 908836005 636176705 411661501 36877056 575901257 975318317 981167314 579587272 891547625 205456372 75811927 600199637 993017416 297929972 728050930 41935210 911273557 267207895 676971493 19943701 95114333 115046573 683411744 405594026 455899315 403306268 488455634 806361359 357839443 32393666 741227169 248639239 596846867 119094920 369178326 213333869 20646489 798582479 670207509 500978900 275789003 612986881 839055237 564778294 144555034 234082943 236150592 848597879 544057062 699557416 312755797 295848666 268153723 867501709 712682773 261922395 826158294 978887775 811581039 775978572 488151699 345536184 483295764 16492107 911526346 202834847 107447616 627403213 816194418 990347363 641928165 581707026 849371409 820349093 721660980 513084657 458093048 770224140 434827883 63283312 657281216 365266621 343157517 3582624 901606692 243799592 12224937 338445169 151819443 424541057 947956758 189911342 384679144 696379543 584353992 59096982 669099171 521024228 492352633 696806704 456157400 824663289 921414313 563189797 23283942 157267414 988918240 401095900 703788473 937680025 528568967 752757825 486959928 145810852 779620836 640912732 865491459 978351271 5687018 274989147 373628264 887999014 466954121 809761948 881472184 685240984 287375517 964988553 976895995 122945513 832942608 182842773 833672698 501014826 972822206 603763631 243439896 92698981 566487625 505472948 105045566 227645040 856168173 691719740 350598584 660667487 56147185 216155782 705273866 124678852 98345396 987459713 670901964 901671323 326360959 415818872 821356459 869809927 323026551 990795922 381104028 591991426 347519058 478713716 181098949 462554594 8033193 538633572 413218562 218595756 138614981 994786672 626017450 331419734 938317917 439827127 342807431 298258355 775441887 860140008 564150925 810753656 240311160 215037512 11642344 430931798 868569599 756885146 669986111 46394177 908373187 213662746 65956451 116401785 348011010 510028050 262172369 642477532 78864058 955522188 226995809 993231772 429734817 407372279 89395117 625004645 594811421 58310070 471741863 508102448 838436965 164636751 494925997 914612841 167001722 731619221 275919835 723608591 12546682 467417545 718801265 164007902 308251220 42477766 117786686 407668544 441363462 432072172 152286515 621115223 618580981 78241146 1190784 344630038 764915542 266136734 475107923 11854887 31791723 863876427 997375043 269549534 487016892 794724395 278158348 660387145 115655846 676774985 798140328 905876938 845746988 485947880 17252692 263686565 565856218 420141548 705495686 14225215 76624518 94177855 148186808 244906533 975653502 6282151 963068780 181168932 517444452 900272713 878813408 968628254 504316598 132623038 25417438 963151507 520548023 941183015 622012546 781272560 751867928 541254867 741621738 99655686 710537676 193072538 188664871 349057678 551020619 452174482 502150202 609617800 549133756 158230502 105489037 790928570 375253024 450999323 850021407 848385430 369393072 255951813 504837079 644766209 783076586 500168003 716326596 227724544 183440543 468122335 960261181 329081848 105023575 562768192 989865591 296037420 492396685 331691104 683593439 871933602 271937953 369524939 703812819 630052463 287382611 766482094 915173166 400236508 776911934 989292481 197840436 158582008 847057330 839727470 689804958 206875500 261108571 415536685 676639923 889266021 289359923 83490696 896789904 326160319 382127879 996821810 760419882 468011898 442721266 687455697 62353642 749594655 254514647 541253988 12893688 549526924 641647602 782508749 838678830 835950584 306004452 816388238 93835261 200110827 624653237 883033984 986711086 657829260 353876097 336370240 961384017 412898714 119204950 984007027 915321078 52431123 573552920 616804150 648660009 266703850 589369754 290040733 511862710 376519292 53068568 829332907 168801048 290256573 165371651 905306964 30398406 942856131 659144409 323024770 719944883 292710012 440595941 3437690 893828344 806481382 156318725 294380865 718591789 410831725 998782947 588022598 537786212 298910160 952557005 653490647 173974812 377613476 392721951 560338045 421339513 797398301 348244340 677074349 978206114 511165772 556501536 710681047 90092807 715330094 15071893 679137405 858235393 949369831 212121693 204745257 341669072 896135986 237716476 236630809 655051609 58668784 972265255 790736574 161696258 894112178 24532844 617516357 551602931 582557708 744154751 895634167 274224600 678616229 119836247 24629717 348154003 81742060 778561850 421817177 200131388 368596884 295947305 137756402 842775752 62389386 787372568 723720966 785886597 318325126 99004638 224859229 249951651 466468694 470504619 61445123 1015368 496232138 959792161 967918970 530230946 996327183 782669279 830549353 774224111 63407788 546594518 162537844 317290693 599830749 578563951 276509558 850028706 471878719 681874669 558429558 674918852 200016969 483531355 802094289 448757030 436165768 123236953 934772112 932947655 502680440 632954895 220644215 80287081 897280701 695873493 990614112 398703265 717711054 236139115 390571215 542869055 577939994 41065872 487427875 84477966 514467018 239146398 540757136 993947831 685909104 81568463 906434577 740854316 739179901 596346263 718770734 654414086 692596628 808854998 857008778 232390352 390538106 241649525 998641412 931038591 872665494 221111242 30937097 131408485 427112077 654247306 663434920 136517846 442056544 41799632 752852805 126941045 60581896 332758958 444331450 568722027 428940706 746431418 197621407 616187863 321468797 556648474 416087226 824916535 816094107 25028731 632477329 61932260 825467912 510873810 63169664 433859348 258861663 413172981 773106151 258935376 626968590 663547598 528670395 540604715 449427989 343592314 947847816 804426736 246769104 524469124 754139139 680536466 379797816 333599698 332997695 583426861 528680223 452385257 712595555 30188425 31421637 62521464 78718233 131409703 662887077 658274815 678744928 587202508 584278877 901598443 8888614 690082212 153611527 944615392 186225128 673867929 32975339 345723840 571859879 920458768 641358383 711813955 192340055 839990431 395251267 294251687 127721410 273417224 268352893 803761684 420469871 254489731 642261464 739724345 594618356 970883520 985216278 79858691 981801539 360892744 128086822 966945322 74046287 987491394 487638029 4940153 926620842 38124429 640024947 971442525 947444142 487024204 941170836 428473757 707555998 335422899 96532757 270993458 943813769 753628715 589902397 640273890 455659355 487009765 697712311 781216080 331187351 569083629 244661881 590860434 207223004 927648946 857282182 838429304 227511524 833271738 886622750 583943731 209824992 56096762 265108806 463966865 220731871 527910106 926974071 43457284 189283100 760500078 344477468 89384597 602772526 941488653 188002104 920667806 904462899 867574378 781062831 274401435 989756932 256012164 673224950 300210156 625020757 847978719 378632702 950591988 475082024 229298200 544024925 256092967 954881487 732191839 121130418 472970009 989585978 69593309 155225470 918408565 742044981 293578950 10830645 20430653 91538592 421452315 99466270 18311550 487580384 254405968 619760726 559604254 18943709 420117563 405212833 723386900 212535030 469209514 827059157 994548239 159481035 375428138 119127530 463194367 42908993 820592049 352682901 909871564 116511584 866679111 179318662 483557270 75278030 50994290 902358564 654151089 305607911 483827815 412418165 140592302 166330975 911246810 817546927 208847667 678194756 185526197 889939196 863347501 172973667 361645473 700222624 750172850 921107356 124526755 16365428 426582396 259047886 846616133 140837808 29051315 39712482 479351414 660661929 401545971 50315871 612684328 375945174 105990762 950673437 858906297 835504513 440148822 641966433 835964729 806244749 468791001 867596134 873722909 219520209 580550077 333296735 17716391 884059235 769000252 907527162 848201884 970654390 604784404 392992711 379544183 502596580 429603821 570017005 332417730 839882324 343803606 393188417 372433876 667666008 948156384 67770514 634455187 50012863 603570934 808064013 191139472 55804515 158763420 901979315 225641375 420761950 556498731 399310304 110208099 640843178 487592010 97131469 828014877 829792088 375060114 275315651 643182565 249180407 605992515 368858375 321374574 957405531 60769054 330075230 231427602 910615822 841474396 939695709 509267178 901344400 844574011 395274630 26866255 850672948 873752652 776439500 443078209 200345720 661630309 410912851 168178520 664571353 804266773 937587643 728186612 899358338 590813314 767650196 343793578 155519240 695280987 575070772 485145431 891180627 402743396 436721819 517919192 285158292 520340021 15030306 308002548 125528775 287765638 812474113 997548872 924073956 734851645 540116651 493558558 226723935 676657861 920732306 915433603 387710671 33956353 587507634 169202382 985647035 34812770 730413189 984537421 89710620 214373262 457940369 209911355 918458549 318637168 461813884 172227202 512219186 3955517 760390585 581247452 30973294 433719941 73318238 966696658 787840016 666618999 255843045 991253568 633272262 975889491 619504984 750046181 586993924 666990469 735704888 305508914 299560543 85570562 699222295 817667542 237489266 575664266 933407659 734102474 13108046 15511151 769795334 413585137 368589881 789122172 879250696 640738564 99030589 607508775 424251919 803886173 81292496 930310141 147788881 170163303 553586629 198639345 769019823 460674176 390734836 49474127 154518386 852943053 710542537 589446264 355703570 600956543 586260102 357817294 898234979 95450147 227293392 687046094 603598337 775447171 530485779 988250192 828709927 111247175 490792061 84834520 705625577 904035472 736518144 955113220 480804753 831984537 989519829 571947542 670299287 221192802 897285724 295043673 122177572 876687028 551607590 652759434 549577450 284213486 892282373 382962104 482801890 516043306 66030838 739049969 991924079 64878084 996195524 849088871 490094318 180111921 802516828 893453127 871296413 563626333 445267064 574631673 721657192 123058873 966348405 610703450 228005615 209207802 444533261 224874300 163127285 791194910 241186261 471895301 936584435 101496623 143006379 24013029 296776960 750413598 117146027 852468903 154674663 335322836 806294555 162964888 171151756 372979480 930191593 862817332 651452602 75040282 422392057 555495979 514832032 707023615 203951089 633397777 854077839 956145977 517680001 559610534 198617188 404042619 472434957 252425881 998757559 197384575 632141133 120545375 39174007 603936377 755825834 773159791 880130303 223246343 960495262 604677420 284881473 578143592 165586873 696761892 214035297 413535681 82444602 519972233 738959112 105264419 429003311 84074624 469932128 545012701 479922283 673590684 774176297 499295212 482050454 228154549 512484757 155995238 157282371 32370231 816796833 669665652 180412759 327280413 477960290 526441869 86017969 86189081 591534537 860735263 312038211 155973806 808402735 838003185 112713794 932089071 16470531 106095051 891298032 231414487 570181572 888740013 690300076 830144806 654092039 760629701 687246246 926569678 725126408 380698711 269272716 161326445 963558508 580855940 330411600 171572783 283165329 881380067 709693404 473623178 278669010 821154253 264330252 100443994 54252321 52148115 979527704 211929295 102138693 441114849 734430789 987935459 687527773 342863587 132089164 173322415 502162555 396989799 212887778 971940046 295278032 872338583 785836733 395398598 161425784 693629078 895406676 689273080 845447671 510789718 178392406 555493520 132409301 467989018 321793548 772592247 105976851 303226947 859878893 436998550 955413566 969253270 516155216 541389647 524112832 818874557 38594570 316394363 366327319 978528331 692026442 340950276 691944680 521309018 244663028 30730503 563990860 349478470 380429104 839738319 273292393 768426239 735337221 815972745 725998279 764031283 456625329 544020479 236988756 31405141 645230562 212427349 810240206 681990567 888587163 393226349 679760298 231020468 1584448 767570001 345128143 838810426 932833245 400575976 803990129 230141992 579910498 585398431 164793238 41213221 319078765 490939297 961705838 728993592 789722190 853076433 315046751 569312244 300685723 823401208 762683548 631693176 944922924 211350570 462410577 143937782 274616437 392919862 503794199 939673019 71403196 833165889 727687293 846780352 801424466 435379975 751212187 138544957 274956144 502751605 443068500 196352035 751108229 740450237 699642193 957457542 799542074 761453873 644662621 749404470 63815480 121299846 436937326 499832033 848004830 784625855 458724197 991470973 524520586 969280910 473837299 489536534 268960953 882901392 535619303 842409650 621891401 728251888 418940509 503661654 710927502 915577996 613905879 10044021 604474013 564499206 552988045 487420080 807796404 485323570 688993063 863029654 47543593 54127425 401031132 756880737 290813729 153117577 81648630 784203147 113792227 786109156 897119946 498172386 24431437 992169757 966480772 672656561 48484037 96609598 635450208 183907414 57209989 768058034 558232520 291471082 772987485 917832550 134617806 198583651 977835135 508803049 697577965 777068818 113726969 469803122 97763832 856273428 39478075 587609543 914121933 820265601 822269675 16396609 911252361 166266262 583380477 250054810 993128933 664649255 197799345 377045670 627844607 58091172 951297140 41893964 845431010 913970073 296449107 134090840 11562437 880830990 379059244 272623726 815678318 568487604 931247321 596910310 986386874 789860483 804285677 949919132 617736764 750698178 582287915 198378384 358692456 653375983 270339480 927866126 102859546 21010935 985549778 914730780 559569291 189512848 27092445 602310025 133612293 89302849 799624581 137367599 735052571 323416633 623524454 436439859 643819565 109799325 933885009 886433181 875974160 959547100 877445693 249212771 695161186 919004336 363519054 401748574 254576760 599003610 684402502 993456017 253219674 530697787 764216840 703368319 22505634 952423870 860766695 8219449 157375268 149229022 228650539 64063049 590572687 970686907 289153629 977586365 418159862 2346969 242509748 570721189 57138992 839099007 552560370 604812009 914110612 680767007 355687677 972073587 564571070 271353476 404164443 767878984 231469281 19892332 523318555 823597622 455575452 80315639 377899921 178177846 789755084 674295835 508433734 400505734 27415180 211916046 545202684 133459224 78662869 562980461 566487473 811135444 197208274 140639765 769603916 217258223 734253797 971927063 350851571 697850423 477418995 273431892 220167851 564321550 836118741 532146016 624413405 171072524 828376701 839621185 414179254 405038857 599348230 191559324 403752453 146264347 352095932 814673606 340262290 860091013 712731101 832760103 357417576 853713620 882854903 152335863 48888491 754791237 554207550 790637539 738757556 354475887 14514441 545027784 366900584 42040694 406894251 342922361 924736472 654677556 283683318 704460851 114494105 971021065 535860834 665873944 877560908 897342189 81221948 274867793 897440853 783957880 479495228 331396081 693347884 293045725 116068014 564271931 279742102 512382266 475873066 399204428 55242202 392362390 369477958 157418748 408224751 20734933 795796603 534900875 973668682 593756699 36966557 992488750 831608162 101552127 732936665 940085573 678298116 919249536 858856595 776243165 828817738 802528659 351095881 543697827 940724736 382487068 943173011 28805968 373022661 638960190 972857254 877998719 55943557 476444105 484034614 6712312 238005095 710703991 186321469 225367710 235675364 989081634 5297269 303530127 921801865 697151475 667680286 812144426 433126056 961213692 317159064 823035966 924265454 944054181 45812548 48208153 150228173 820196670 649948161 558453139 269772459 483329503 34137862 313894880 21017452 68253955 988882195 302098 9453961 739401818 932041162 140744770 856386148 783106181 915434616 65782542 451757652 569818000 112722472 765749989 351050833 30281343 935583429 725011552 358145468 281401393 583806104 50836975 460425902 141687708 499956674 215998415 840356980 321370777 407746242 660614075 697949492 378702130 479691863 743292351 616311104 748350446 41485489 15111768 161762514 690387145 388174144 505908372 982915300 191323625 313776174 122661233 472598345 601220953 116778 633489202 145897602 84424250 461880965 57296578 14823357 648415665 318500124 894498906 920590084 970364729 680803693 697767331 332943270 453790323 158836080 338889597 943841932 986742753 792282930 477484057 687228718 812393106 18938833 676194903 111835591 582998703 389697858 499708608 593366398 81334495 786462446 46622197 634442671 277540961 649037796 398380794 374459662 481230944 444157506 8839095 320019899 634843665 117955113 56040131 438528958 265750469 375814402 677662928 249425060 839991021 457856573 970936667 304685992 282233852 181421055 933112963 624322122 91379987 985495075 244093651 831730136 418426183 757644652 204072804 326359999 257628324 84922957 834444534 7730480 487726792 781894786 148784859 310414377 643919263 260077704 193454014 322131802 349427536 723708551 604013962 583062379 208508884 817818182 335863868 376290610 899634788 291202178 81176719 309124653 278593764 863070010 274476155 953788156 248793427 425092525 763665064 912898417 594320855 729293811 395211219 982437731 398748063 525280662 447626562 798890972 12957199 700694542 316930495 311234141 656435532 345055050 844444101 986104230 28409025 495653534 264870474 399288861 777365628 529935528 600742495 288545138 859339225 279205341 239872175 787591320 709340482 83341373 318395118 910974832 844141649 36405049 553177491 83483447 366989473 146885941 337008571 393536905 634513122 388907994 442470958 708620210 306544027 672665398 477262117 598801360 920964106 187070186 6936808 264151980 834898802 780111925 265782271 752549146 798513822 967511429 928900793 451041136 487954782 813260670 187175753 702387864 459599610 313725210 435633605 364250121 884357684 890679754 767126341 754181642 294082518 839738691 504166840 989501494 379260871 550080371 151801184 328133042 430738060 636824596 790382545 662019356 389919526 109805918 356023989 200028617 884781526 937843540 66009623 705172593 312376322 552595626 184658296 596474331 749453679 746060468 507356348 401409815 374875731 491478018 130813011 307911139 245431712 824312595 592924659 207667584 671069812 265468693 279009953 820560339 194136742 980521131 720778214 492194028 135686961 221059248 138024250 921492741 507016894 133657658 73121567 549516363 833893878 349884324 613453806 216673108 646821875 293779126 37196440 469771294 482132020 723499204 966637103 344769305 928256691 716452093 677299708 664770733 405167892 742196089 469019879 804604102 576859468 622560405 183196479 772491805 738963597 197301971 692271961 156892929 236822979 941681243 18340000 839894819 41170672 66114747 962963654 320472210 595730630 78327423 696813882 502111733 571963389 415856166 691870713 719219172 606563237 375464843 471651856 416467264 635790515 101935880 100575558 482704794 900586631 288976252 6664819 800000161 111495667 40282997 983331653 406549923 538999484 269995326 951596819 462076565 144880012 688063294 153941864 528283050 995328882 91116471 620151304 516259723 647773665 541141872 609768483 175943559 139138183 729083221 899459172 66184979 221484819 186163477 968595823 670912086 973118673 150269934 139834237 153865046 40824228 64599795 7054178 585409967 713402785 223868489 692745458 306353406 78511214 90775143 563400600 386786205 653703856 326749968 721837780 122043351 11317487 708624526 714356060 368071298 488447317 294634896 430712566 942720429 685361636 129359174 813490664 667436201 296221650 226556662 720722682 557411311 103434404 140601972 276438677 499766492 946607086 154673000 329348522 645603224 606250524 541454182 83230168 965078059 859029265 753965673 877707936 279514306 819772109 532490404 873078834 274469350 267286874 804822127 861672864 115000992 585644321 738844624 64889266 659026141 720297731 488599432 942878645 777802315 852517634 129366189 564859565 737520481 805929271 720919715 746405334 303309851 33561753 962802765 800035084 139177114 367610282 948514963 396583505 679329003 464180763 64121882 950587866 539001823 492932500 662995362 314948122 590163698 725818473 542912026 5539045 149297740 671385093 534435582 510013692 599661070 791891060 107735678 949990376 245097671 350331149 795681661 36017320 587510196 119144989 355097274 161822854 76519765 998395190 340288825 926924101 797264444 273998440 328298814 670974024 460875626 261881730 504967338 184953975 864826416 491026241 223144400 481213834 369026767 906407811 169917971 350013179 433804850 603798574 250402467 92293647 525520723 314772186 736285661 407619893 806681072 904309287 775884592 780362806 173569153 869288693 728934846 913585778 628217822 699617326 324354669 385652636 705261710 786072620 990903839 6027907 189452404 14972349 152463908 142141887 617667856 109777063 905873861 459416459 340037855 265601252 454697060 127962162 300355116 803258797 96785938 408360726 846545861 936699337 361854146 533638631 696917201 360749961 122923062 998571925 179496480 925326140 723811022 813119659 746203317 932625034 193485578 870117205 66996843 439022603 679462493 447427445 425377514 536542460 309691179 886705913 279942586 503020806 689911103 923823276 548111093 421445818 355197019 978370924 344020683 544837125 314676559 286600324 148844629 218890868 952737663 85653855 562870887 755748536 344330972 403507278 368327362 39665363 704598241 559854593 881598177 450856028 202234202 353273649 884941879 559158689 585876510 189735378 290769135 557043889 917422037 343573600 115576124 245936917 226282082 868770417 383915423 918941695 367873509 449028750 370378455 779239293 277699623 497888597 75773942 464553635 578175429 406078318 414582222 142795312 837402762 866240619 517915354 851934171 719798303 357755888 770040743 978121707 158034159 261629060 997740090 324259582 721732543 927359909 312722435 218433672 212429298 758682883 284577567 720552314 404421320 333208447 997727201 117769019 321544539 997563929 998954216 690869617 490941328 807629375 598022960 353036369 164918352 111472003 278451367 44651439 279163554 766858288 55890797 792748746 704742259 180812076 359126044 999471858 672715145 515876028 202285937 52291729 397363392 272858635 58800479 197079836 668364872 23872389 447260481 454490054 612218318 812575984 247920921 881655370 839803827 938743349 480864814 924124087 537789788 628349249 574666928 300919306 389116010 641136685 571710589 950832565 473401489 382939036 693816918 433286837 957677214 394108921 947748116 70141454 753462227 835096369 748766285 167220979 466104097 513426516 834785779 791745247 800029020 123899414 936891192 416877034 737217800 902102335 15252849 129186844 553598616 356213069 777023173 151018693 899140786 334039145 635012647 24638605 143826017 355252814 95793999 860025175 533236820 635806428 709918576 220668992 82946258 690396695 230771697 693852130 201818792 542813971 559708896 592296625 815173809 13884906 540018335 741208537 260511252 979445198 427901572 246416256 681130205 291458707 988520146 907848423 159510078 428200391 112617425 393537501 206751786 370694964 799725029 6586522 994596325 55779267 373018955 109465692 620885807 537307972 457479682 184960208 8379003 652409140 688025694 544456842 341704275 280897061 563175688 765117993 867115416 742094004 643802101 8253615 270546749 630045347 827746903 891612127 305363177 853352212 898970271 288885819 345118659 384716186 514809974 468192294 754109967 240352775 731403295 993918593 375640180 935481320 323129084 322755284 606385149 834639599 609045606 457407077 410591454 306728007 658881553 990938421 483631085 446492359 231653966 76461727 616877866 616537423 790748412 737743615 767795400 236308006 496869111 69109812 281371328 59248857 72149005 936079294 929792039 607297037 391019432 142229764 665407750 615300119 136072822 693327792 84214032 994144144 846410681 296708354 932474848 999359504 617629798 966159462 656956120 558447572 79289929 410276961 237539301 395720535 451576417 485807342 989139075 662039522 118685071 136328756 648566149 882913738 29856248 705305772 27962130 309115730 493311208 213680805 768768656 377810681 357890318 706103230 139401328 811752246 328078282 640703799 819335229 234777353 985221121 653689351 919019423 125510994 526590626 918612217 633620899 223786861 139163338 204244834 367952676 746364038 898223284 864621288 548386625 636523294 861486950 546427232 121455551 740699313 358124432 544618524 292057595 12085838 349452128 557074119 701665420 113667422 656998376 291385739 786289221 614967123 982991866 313634022 76017616 724087157 980050781 410996389 847342919 556368944 593916003 605438571 357028099 124619980 284336689 949974205 611403022 165097582 811516277 38648737 380184191 259568574 159082257 380501479 287913045 844805409 11627301 635016811 552042961 820075898 955628633 177456667 644517398 834048881 319101239 903750240 365531903 314701340 133288799 74324174 34418438 542760430 986693050 917311724 122136750 301337426 390468605 309318883 594882076 833116626 249995193 411062482 736616145 148362684 816585216 766123559 783297139 761677721 402088406 346016063 368960719 888640428 331413508 645300662 802366587 910268528 642493575 960069469 666235727 378534421 61520396 285429713 180531870 305737317 714239859 431725335 538742958 850231592 257394723 288345377 489453031 195509798 180702093 841835285 645032225 532368224 57176207 414507031 814313361 283258432 905379802 939709911 164184362 822308582 79841325 616777238 86574136 31623891 621464569 546886953 663011475 443655529 864761787 475140871 413304671 743473784 265609932 54862161 514973517 153096558 918361330 315799831 514048129 583027071 411332107 308025428 459707261 609045773 521548358 976779494 856348287 61968754 635026953 913914319 203728015 386558921 326013934 971555933 103683809 18200715 307297481 377786907 614006781 375694907 592102485 472811284 19539157 281099015 25977643 507724274 212678274 774545552 632511768 892064404 583079741 237151694 986642997 880131831 229953399 891212533 898087020 968652084 16054972 407726904 318778870 104213875 402960201 893524054 531838120 85899193 703772380 666214720 979302081 629281207 878898846 773706720 735660941 968571068 258125941 834436400 184831792 461034571 366380003 526059212 266803136 86516674 423781244 290630561 734905488 586303452 261888186 875225169 153686279 72914455 975911847 732612186 18134236 738151298 557690964 303704536 692006312 203626279 843315560 314378408 274429860 753159473 453598095 845306817 841412001 431693264 371636445 562953753 668060552 705928939 471078397 637923632 232345277 320003691 471203607 350735979 833176963 172297445 415190178 25860463 739124696 877534388 124693705 212246896 225331375 649000858 843250650 616606536 921126316 176317820 114331069 287084828 762547166 522108697 700210829 38272078 345793848 690453539 608706620 28919918 11669224 419514292 356160440 563353001 992008194 431117436 687945326 2234992 734322113 924692074 628102568 673919587 451693203 925011480 476047496 888733365 433309952 512568833 321323427 758134063 719932984 600089994 297943042 971735551 493436992 209053613 443252899 867419529 21207823 880241000 296454776 333584296 34356067 805201843 264535707 394595463 580355368 976264307 962341018 822122098 371475409 218680865 529544791 958824840 503115629 988858586 775222489 416431045 256681919 879032711 787816346 860631150 664427143 981678253 698974862 692894227 204761621 34845274 132878876 467985699 997683070 967082967 998580782 5641080 454971017 914106939 192668697 253105252 837221300 310453610 465242623 894047251 280642692 561131980 500975933 590153310 813173102 168357545 260756274 21017217 446105310 977819630 330569657 489253428 82825242 20575802 457598487 476780551 866988532 950454858 723033063 548847707 867435894 117851327 855479435 653034464 484310575 954775181 781893599 695726245 144349661 703963753 268358190 284919590 656092048 357220998 316623408 780635556 887552159 830125210 965490947 633986214 937388466 341969094 608769521 804043742 188652228 98272552 581466126 331712590 233132846 529980012 435633316 236503889 791665227 962159671 781724353 41246197 319935026 803979367 872412453 983607258 784244299 376525572 466408628 480708184 381831763 793761030 450331746 254953292 715720148 501623646 926499548 956482 79637765 508093626 933594071 94607138 608005865 692248449 38699219 641171174 106530036 565383678 838822353 671735189 552774561 486302430 451256454 93004256 718878763 779365471 293461086 821920710 348646769 874878409 732524183 165802494 869374896 546570751 845664120 608579357 786259120 457471485 976435087 877986770 118492647 747123754 985087742 507207385 6321379 15250108 824588469 953124118 552600428 81183594 642200339 950489691 727768915 489714182 807546302 416282586 140286539 83242196 742828816 759683178 400066186 789586875 856799757 612915573 289991964 514560607 265094844 441434150 406330571 37996238 342941623 646231617 244083909 69952514 164238814 21109236 643191092 623435764 213630585 172941010 978235383 531495018 944992357 846795327 707266607 568769718 451851951 995984351 161908284 258176524 232772849 751749218 119331947 213703704 144091988 129205546 792218883 479574956 187295433 363866310 144994656 510349053 654269517 873378755 530396157 771212489 486746717 430241815 518820503 283508533 94479275 369347777 655056027 169553599 125621503 902835755 604682465 711027554 169665135 272091886 946264225 846608317 415251249 487357497 877672881 756588629 23446626 95309199 265940091 395669659 360355439 216608731 923677074 518592080 236392307 360272103 119288209 757669802 270794608 777297924 392107364 932946636 339550118 48890107 142272620 613599344 811006752 605234451 19569758 602142296 142893650 674265744 629009780 240349659 937051336 534711556 438601675 797014870 936360326 684249229 510662598 444056450 654571690 958353728 33251348 712876175 763739414 14000193 855588017 20964640 846220037 208761539 948152868 723454815 466827833 708012456 351083509 342534526 722137381 869495104 54575901 656447304 284514980 154536066 541058935 667033971 591082405 589725184 326699039 648849666 428578394 39359808 506760943 799530910 849977618 695121481 603066723 771329384 706491079 314263632 151046348 863674182 71488596 548480412 26077954 444764982 985839347 674060397 950942635 277885702 978027722 267998300 119227680 151410834 870581611 673005793 396401014 277417468 160827789 649600921 411649631 284540362 117782636 891655178 291517427 91425980 161983893 199128178 471020360 985445409 318910486 753800634 519518836 967200668 136389573 117793871 887045236 78758441 900213465 107908461 97919434 904759128 963364673 84625164 325711976 95613048 573444962 447796608 815934081 31682986 361954205 213865196 632535613 271697530 363834948 729210373 778488799 374610404 454513115 406631398 709002562 695725292 703851066 307075255 110794499 298939263 621394201 121176871 829791867 552177041 140167920 722781720 933266397 443796007 705082295 969327926 263580592 272808008 697359947 737327294 710665770 675110656 317838855 619531807 800227829 237667178 805885917 814044172 728209003 821198849 566513409 762357186 527004679 289134131 263666633 148691314 726394272 686355826 176733636 372154198 112725219 165073562 315688443 641516377 42463924 156230443 162773873 877959083 50938895 900261074 337881663 928607856 206360358 890075935 15781904 332588322 93977829 968412176 722047275 803689344 377404025 785340304 175820264 714274582 927939899 222319757 462096479 446283383 406943047 791450587 328842188 367456478 505506690 425605458 589216729 804576566 631680202 314230862 868456865 714879864 94114896 418257939 994271848 756216206 78838987 94035013 828974008 415148037 893623343 288358727 144030109 132674974 981351348 688543461 780657613 436784380 544344478 688672027 709981939 982358074 265733946 826359321 639476781 178324884 570088484 824071957 827165240 962609004 524493686 907436404 173974254 928026007 709177573 741828047 107604550 356617135 774327400 453257461 206604553 170433953 684825884 923957308 24177267 61932684 438385021 785612130 719006656 506196932 710572182 292175037 589571227 648139834 336721225 749467471 299507622 721920701 828409888 467365048 413727718 621472321 836260857 515482484 969675079 382581749 105504484 49980705 422053423 473136372 480323240 149372899 191172434 840051455 884589546 949811649 123338198 783076075 147633398 57744789 639764587 536530643 352752338 495713944 102481287 155155190 750188696 742864783 936771627 282586114 328170057 612206412 251118168 40694729 191765175 65084467 758267588 39281781 468218376 955230977 468328760 497709812 352797492 116413022 301199828 29196185 188836347 30363827 133887256 725509772 565093380 5860327 183069023 907120763 488638417 559197001 29398001 406321777 579438426 812606471 716828286 621206037 278314035 671077621 993101017 189299446 520853814 137318240 784055491 672621363 982073200 781678707 100624348 466664992 484576459 579805696 458693379 833372084 372719413 573075045 860506549 518532848 975264064 523233332 279617958 380806556 755894537 662868955 390116274 391081194 822496587 837725909 595111495 61828163 572761977 794756051 240222640 990762108 542092822 570723710 21022895 370484495 448386301 441146638 602719432 45066252 67188524 310627927 61259132 75843227 60931623 410615414 70975252 635599716 337943399 998880149 409856159 124051271 802582697 466299145 469320605 827761974 151284224 590230469 922690844 596946132 720623425 367182049 823962969 13835602 233473847 347757062 581386615 993137341 836464039 494614314 778647977 609323211 898500674 102537720 732728836 871817508 29213563 650960200 232192717 755221345 772967933 887922238 662434843 215317849 850352403 249356831 613627674 973822191 703377130 397297681 992460594 505725421 105830787 74312967 75436192 52640390 271524340 794483697 205680939 362006427 297101378 681770078 921062481 722982186 566657851 40299385 320116204 938416788 103110900 80868092 418124079 973062801 255580758 112315702 974570705 250282820 450516989 406449282 792420716 623217062 738843681 955556756 983686334 315485286 886689310 112834487 901470311 842219493 301865837 8281417 894698857 861683135 235348751 516948617 896476670 47754348 19991316 930000258 349096399 868566913 342998969 536114384 682534442 706916521 168639600 949812247 809723166 367262435 99752165 667628519 104128197 405303441 283925233 417008150 67423757 888575013 640367027 459029316 644077257 511279816 162689687 61381218 164524906 990363504 636652740 375177135 800127318 223418120 477136368 331571918 717575931 952391269 415665739 595136215 872448831 416149114 552919542 253777134 480509765 75214198 784479866 10553517 250133726 32593450 876157815 763772228 473152676 380390477 387994014 104367557 408122380 955031328 662531955 622958879 707022724 284012623 250738571 17716555 565714316 102079898 621706795 517632706 567503351 149714453 159686706 147951750 196470277 622377885 766064311 126784344 171844158 251964516 230240576 645281826 529989475 40041867 843607690 490445913 323447209 251079092 633592440 666191776 160272034 793507540 78415916 187462641 981360763 927843311 744708865 971375183 817507514 970004494 609584020 404585499 323166825 918283259 408887219 361449519 466762424 428264040 5792160 346113094 629034043 851718060 270252295 727366761 588478404 600704334 821546521 805938352 321622484 890499995 942289312 470615905 463401677 421266503 621444424 432204235 240139133 225005608 510768664 563896333 535685895 967629883 573951349 808901890 856442929 729997053 301089241 717047347 586529430 427112579 834366757 733294335 979344448 40627441 842903986 73446757 261213914 15153324 828138084 93126266 133246607 811025347 155246956 897766879 702644447 226304577 490442277 813563386 762895660 166556852 712365820 265636341 41266316 872879978 979792503 944289240 97713753 268056974 867038797 39950887 951773236 547402243 596722753 501537989 328766707 28061454 119810848 428353687 75983114 193649357 782178205 941908195 163528604 214040466 679208483 936267750 39936812 1740290 762488046 836482092 304033587 338112838 100675693 375235786 97376067 715093854 382320533 916477938 642155324 852033571 231337045 308318754 161445109 211141441 315402163 395420005 170197553 791395241 436599510 20092063 37203233 735277937 922448441 319944998 697269292 939977984 108902092 733567068 672915023 764004759 180661807 944487968 983422999 663802364 272131128 163623213 425201443 960049006 907885881 188879530 855881527 71511638 593844315 291006103 168562736 245116704 937749875 764989542 72078524 837782666 928971084 461538821 785467316 761816161 861624957 514811275 192553694 613207146 974728968 910914595 443827935 121179264 986734506 863070515 710762894 745631042 291261101 998056396 926638910 9411901 540284989 537771396 922038693 652480623 186955462 932147130 966558075 944176773 647746127 519750780 993178857 756913180 587218187 871916964 784057518 162266914 203478355 8476564 475561888 420037091 507553718 817589326 645288293 47843092 375722233 160507434 313418767 517200541 516744818 821054076 12132264 185615757 498176061 67622747 493318213 79572785 52406653 229717135 113990673 943670114 44706439 781165337 104606807 460031050 288045428 183748336 671781919 166452450 830297093 585000111 698887852 672511974 545179389 730407941 489608198 135328775 912286832 650232058 962470902 95413859 17411615 421836649 575096907 496556524 442872834 708958742 656465152 748800470 937403887 598190023 221449882 174878569 817327038 564050867 184017918 621604429 15597963 98652916 878006271 154770567 932134797 236278821 739480006 990738653 691669953 542025082 729526541 176542346 33292204 218690978 832738540 547326789 616286064 958083343 837917242 993653936 693084032 607119236 327049639 52033642 951706821 481239430 205980150 465063527 904926357 840790121 386091881 81099961 866126846 90682593 808465267 998716192 120465443 593147697 119600008 420709181 718047221 97988932 471640160 621412478 795514140 627378551 233021950 808472500 780159826 310891095 224232807 527805256 202767498 943367389 911551598 555148212 909947146 378177290 616735530 848962433 3983070 606449966 756616789 783123223 618864029 786279248 952839968 723371056 406591431 60566006 917266846 910157196 389640362 777266025 729136229 291068355 25399242 959530623 490756082 697105610 628159249 37919292 18083649 189964200 943797784 710561036 768104590 386913612 742318181 151702104 14027506 58204284 290228774 621212353 949078873 886971305 834287259 13009853 143592297 331484512 110866529 348172289 797545593 587863380 148139671 109443713 641075830 51981247 573311869 543325496 266183543 479810223 646028138 463094257 553173117 74336678 493986785 526335447 767777588 130276005 644044044 203840581 820137197 508466252 780434607 350031623 787662342 254892918 624808859 560292010 501269674 253063246 222560341 515230954 492276907 184959179 155429131 743710911 35868832 630389040 792792930 67988562 279181278 185544558 969774659 777451121 42777578 304101351 806393578 450065907 582354115 671669755 79567674 222569952 77192194 62065919 170190836 761852969 920020878 157045570 77348478 779955767 439889116 535439497 452669407 336297049 605143850 10938506 591631652 77407942 376379026 824150616 434969669 26371776 355553137 859368082 182643836 668911310 194628859 163424700 575633075 780895132 145324722 447422483 646248633 756164586 144005470 782119477 860187121 46177393 116304345 537223349 233627688 746758953 598520841 366421781 256446772 88893091 477258354 437781155 975991796 591025812 869847349 950580473 232979618 672689079 330428309 368717699 926517396 656882514 561315244 648682608 590576376 504761149 617290774 928205112 819521021 677141324 52171609 939959400 246060110 184473550 160223033 107095053 697423609 757370967 678659391 125811925 27735520 227106092 215272782 10721923 82038296 769663154 572552146 135780858 175483775 281527167 578627933 905154482 230538018 632468931 227263745 875857008 800683205 253166666 350816664 467007749 94835027 682390289 151937179 227369125 366299752 932667241 25917878 533660759 954003490 683482336 895749791 878517446 402591158 119659208 168811750 961087709 821293117 590725754 201826640 56106212 265451218 633745470 411217375 840595981 536526608 70692814 59216753 744789325 904918930 983158258 961902995 469855325 876038689 843018627 148835087 624090581 70333342 826426250 731674889 692025121 875513550 972647267 471524091 400846933 908825530 220082131 611404060 924699786 656745597 34589960 451772130 257239046 452625596 408855739 894662137 71994861 693146032 210625789 905794710 600245303 913772176 129015410 197365579 540451244 831785319 645770496 477434586 664453790 870211287 833961403 649156185 596823914 649814233 541755937 210655925 395492049 171156855 813092065 888391522 193331957 420495893 804202494 726891109 309334436 671580404 55450653 420408183 409638680 450110683 270965503 682159259 993888546 220253079 933523118 552710532 464545732 79761351 483473774 571928990 393464230 106278377 891989660 444320347 281908872 462760359 136728151 538106120 102154473 102030339 591976925 66515584 320841020 790178443 2615205 726423328 888757356 89459161 436326182 633532535 712578681 919522865 512120495 868840760 103637989 107762962 373311829 51815119 134026636 332666985 19726806 422460895 838362004 756895675 844715264 837704961 144611749 364363748 397970806 114786180 639998310 331212500 771147727 259112812 733683432 113306013 321207746 151692583 565906722 571152457 442657054 560689751 76402564 314556762 187093147 861830883 615839947 875635198 976906208 394604533 381000119 335018562 300127039 629125105 112111984 966763794 901108364 132573149 331000574 219597999 46172242 152150651 244835088 513937553 440600856 768732886 268791645 128306675 99551647 472628791 243582874 165122239 807678880 764162945 420491133 128370309 229662489 489307318 751967358 645795610 189449331 820434729 284117581 185140580 445392865 333859185 469309769 325235967 418311155 360506830 742465899 318819850 549134841 784543337 400100809 587334045 731385606 692562222 51385462 510415024 761743169 693603111 736263862 75687273 250454213 32388307 996890630 64478574 54821020 804580579 551661549 653341236 400666301 946890891 739403507 233696725 873943142 930759997 99501612 401725103 614018177 386765836 675634089 555144902 490855899 244667400 154658931 826624968 933751501 344893369 11383802 530863581 920706605 533613861 152539617 716081799 175570628 434187760 809064423 412846693 573287589 170263741 426404426 239587079 869484584 388954371 627568056 371236289 262751088 220535987 761466511 646575204 171970720 80350068 98294839 256185793 344888862 947814975 459507122 967749226 508948891 876279051 755030572 209344535 503649606 991369861 649348253 843344746 698351325 556957870 916934051 237156553 93234736 224617744 182785993 474946254 945906174 969718353 598151932 76441322 51138419 781486403 854605018 190018720 175249988 223237889 264702653 291451311 226808184 68361784 528631145 926409795 803009606 760000232 341309162 716401164 925328148 811989487 897691601 355842036 698013903 86938851 201451760 667934200 341679341 136150017 599659501 268409753 939254649 483085409 656137629 894055238 810031767 944942821 666918445 745030405 934638686 165629808 656972652 936865361 478155865 559749683 462453132 879653282 62833943 860661008 915120146 261445298 706878545 25113026 72201722 478372124 404130176 961646486 968647908 750892880 395110524 368739225 416275938 27986997 503117570 382660494 852181057 103080402 411446502 394217263 795572483 279574835 207202063 270181305 647557757 674348400 993783005 439365833 924023679 906978821 210901767 242951275 209566950 240234705 286638159 514758055 530670243 135449256 944004750 102210993 30970723 386462226 842290266 738826453 497617450 225008067 435045190 221556827 58927973 942686694 782190539 232955824 992847102 605570346 271095331 898426203 56910549 474066529 830156550 809638249 748533827 842470814 185636316 802924082 213336580 828558233 642944126 373401743 750454203 300635224 375750936 74458191 632619195 750766682 976547853 844108527 940986722 692844969 376255110 478853060 736593911 666701061 249724758 204162571 619683795 262860533 567860478 270015273 753897733 109296988 340883089 871454589 895672325 518963016 127115089 296590555 6930858 633237549 470374895 972265990 975818112 878921339 87122455 135344953 112542465 994604794 770199716 410743508 879377020 225843628 309585595 709810355 405512884 675762609 993072497 985602926 44320748 308401750 109568674 332928844 40502873 689519207 421454484 758265502 548164009 2049393 723689943 599334739 682141050 741980578 119296332 12145342 130033236 622975419 488069134 153236702 419259612 132163987 158125755 996170324 158141646 470030927 748323752 339848809 727058222 257448631 887370501 191936492 265985423 58184740 334724608 755347861 105884874 38155382 982095556 290882110 737531019 511765103 722121863 308233770 478035112 270787280 5451455 109634836 989424354 590989399 319958223 85320315 279412506 434285435 866761041 494569276 418710978 810341336 552819772 593001847 485683917 747001017 288823184 284075827 329987879 966901812 694386255 930329779 921671569 637215834 237999641 187002675 141996633 687874166 841296109 425048548 213578318 183836698 408245009 749341343 858994680 324428929 675048359 752614743 902923473 382541744 356530021 411506419 376014934 954334019 933677229 979198627 561753958 947567283 400261982 607953412 477337951 621963865 765563440 618433885 729378169 862646476 203530589 784835400 838089189 921036272 341511476 463745697 601052361 95792033 707483136 952387428 477358271 341348231 683699360 600669431 184953353 23971292 177899329 470007771 336702796 944974976 803147163 162740562 874006498 422960188 460069656 782159362 758315610 644182113 748434783 62405446 730118770 236234903 168428599 602393500 880574587 572999699 337687402 426295872 890385231 586461824 792129259 460061023 959815850 579405405 217364780 970725270 338022056 290109636 929396142 145558114 687708716 499692456 191562409 448427169 30103189 907359029 376704121 82938305 427343248 967123144 975830474 813564339 482525059 767843429 341695075 968051221 584181111 697526543 88069543 470319350 148078911 749278957 991310853 771040855 832894450 643629501 5645011 58573796 987217161 522180392 893244355 402080458 629125111 354024365 46798239 157909807 966581587 827121761 1825449 372691906 583391371 211710711 676088746 323903734 48941352 811689591 744058896 657523486 925886046 653259706 684608775 613522898 262746702 165148239 957907860 18503225 616537810 242549568 688320902 881192727 758829061 75870408 117969257 40027985 86318386 381503190 304647238 721719892 586580629 277576969 221454617 773870757 743762248 848980359 738008529 408404103 165028388 863215902 866947665 372347584 250925305 478551199 111656703 381031358 800142529 28793099 854726129 290569834 259143315 433563551 247791723 74235029 344238382 698252060 417136630 412210881 210634729 953176376 855737410 538062795 18534438 67599240 471178064 429783160 883232031 381197520 905318099 791890140 855274204 371842127 580012223 415525070 690356577 297914584 208056997 619617641 163118475 471699730 440758009 308032449 486489716 205901424 798880683 961375849 891321288 403136609 493654856 680792153 806161419 276312480 857488640 174960003 696549846 607673310 314752178 682009842 771432145 665750495 998535883 17829435 715924422 523391190 811780380 322948239 985491107 411944320 648783378 163565112 40275907 663250625 380888844 161722978 265024042 679486782 772568347 997208674 28988627 627980246 579760916 113825382 519768075 746037117 843947679 625129 922863675 867651978 902191342 102994290 486082331 966326416 479696854 412619735 651256620 221204241 949023341 423741656 330449488 89356687 480352608 312832267 35261562 609908187 739112612 9001310 176121743 172109724 930435969 179910619 989324842 753980465 721546409 872702213 56290664 577043694 281936331 961516690 736920834 125104183 283822791 980077866 600305096 870989398 341246108 155346460 125718915 388522944 356884130 345674291 838820673 327700143 910006178 337461160 224531242 347021955 719841159 196305968 244858957 664851079 896925723 597661976 526129853 904370411 103153902 859071697 1909696 987620087 45053802 469073684 234400881 304740364 805410216 720422582 282022261 191864092 357366256 209250209 829811918 880799250 56247772 792697976 499195715 149179230 82885698 137669831 478533764 322777914 79445803 975490441 853392610 826439617 789156519 397109260 408239678 745324460 889475510 116522486 471663379 573014713 143644187 337606495 902470115 711961262 9606633 90216715 495786209 132717613 98637429 148569262 221162901 32867825 907461943 726078728 98849925 771057602 940813804 905295311 465877729 730056121 930670874 96960873 510397619 847511877 504579533 836160121 100466775 981385385 564332202 466664822 731511683 533795783 303884130 737929419 13817683 249764614 56543 112458364 198045603 281973048 602384998 955086638 100013161 414197497 200544171 347013564 461276952 919299755 903782882 164072315 744145834 563160550 492439439 415577389 96528193 237812165 658454930 946338414 773283052 959472871 91205768 250923128 404079886 167268597 423934568 916850360 22738965 736737834 842535583 49035876 770820889 848950425 646212665 762092081 357017961 72370537 331432389 143728760 73898383 341880716 147662762 491026336 186867800 609911614 268856854 301134924 37212968 516075187 706257159 13583291 587001739 862736888 77846027 2162262 694901188 759762478 414632740 151790725 931285946 243792393 261213265 135720996 414965854 317554114 892870441 929782381 62911239 735971777 266552950 315164704 741720698 952948180 195121955 133655352 883555499 326337851 707387576 403459675 516460384 102065673 144177763 15775512 198183270 529582233 889430797 124833912 458682967 990677048 497692320 629444614 215182231 351405296 688162469 110550572 136722708 300652581 887818694 865662414 668806243 233649923 238863091 282667973 76867847 358900075 995881403 210626357 541069691 704634637 388571421 55862403 20720802 292520187 156734819 768495956 660265143 794447944 424526374 302817308 707689852 448924186 100989016 198942294 938387106 5348606 304806798 334934845 146649903 621973112 767013943 752030088 828179720 704450375 597811601 725393329 24307773 256781653 767821236 944333349 286655267 513697416 500139956 664566973 533439620 195666219 532770985 577407771 947904833 63256736 54787432 946329380 509215903 194010655 891649375 582399697 70771096 969780361 614621301 695767007 69795631 916583175 148166282 556077669 207570463 186879402 874681431 579295408 777176477 172239426 88444034 951480288 669694140 325842605 778363405 445072737 697614135 180837400 395407562 681847493 523372805 188091381 633694778 914703607 160406610 10863379 325339255 698202793 84108909 971591367 13208178 730714155 666098251 696519174 595455569 169872248 696370075 492405555 300401384 56740283 352613527 733638301 621513710 685769702 834605978 622841452 630267201 120341438 179175077 234558858 520927645 622992562 470927822 720517177 63241746 531593727 817357100 456324296 214864826 924495206 703400359 621039307 287520654 46938368 200781330 851459753 443103093 80605361 301683874 41413821 608932350 632904109 107151645 722992423 278483263 497810495 892120373 560280408 9875492 257626684 265886689 259148799 939836687 643770941 785548396 912872458 747201119 87088493 337031066 30467026 336531552 262805343 697991929 739909895 716610610 203811125 970613978 665061423 452148788 643878365 80240989 205682454 35856202 281965296 833019680 683582653 528489262 617169349 799641030 137100391 308638404 105397899 344964166 269241606 623048549 338207836 155187611 95929679 563551431 11616277 495250407 740266384 863022590 14738337 980045947 845745980 668516148 82726861 705971923 163125126 98521829 868606677 379443934 972806121 197195854 26268801 196294302 968110392 678174816 466275665 708717837 993068272 849723515 486037263 719892473 697630475 170038761 727199605 147441391 823104487 45270774 289094950 195040286 106751553 315898468 560893246 147335715 92277481 371598168 991937032 209553381 175051781 615908158 501296883 240412745 869450549 505445222 976022729 20940083 507178448 723331314 77998034 798589655 740850352 155190780 670696040 790529117 213636825 847374366 851835454 170791464 211284262 150906069 276046582 306515751 767113975 552332040 585851954 890208334 516562617 189576 906810559 571836551 997075997 72189402 324523321 668553103 759263043 673296002 46785271 872594431 978597532 783808980 670591015 306580935 237683262 387563537 579853138 879255980 851819134 114161312 183584620 330065601 960198428 284520589 614749561 377468887 101933876 43390552 629236045 62127526 789436265 28748958 460927602 476531553 78962745 983404472 952082316 345974148 620152679 102537835 760649707 267938270 228516893 824480452 449360064 842550126 844045158 806512482 803466583 238454382 709601574 996174426 402034976 88290483 68432617 667642060 999791884 990386801 575700168 20148460 578071216 62308727 488522778 863809879 558256957 269545645 285727410 705506080 294078045 611379572 803678513 217595063 277388706 757351592 223501502 148110196 590477657 39451967 576837715 196554264 44737054 260865665 755141613 471245906 135973376 350902762 805757471 167247974 515461183 267507652 470178721 367871239 742280189 554159317 132559014 435403367 243094638 675913301 109731530 28096895 507142510 468968445 416917939 356169191 636678046 791721580 274924246 677382126 115788610 95463168 671183092 628739956 925893744 554856388 728704793 743913973 715274402 312176012 520093112 925054686 238579310 156559128 122679885 629412505 200435173 134264899 830330562 922034781 81614665 376478434 311209263 37799895 788930335 418334197 317183457 991307364 183854160 304630422 988088611 53154091 624700259 77720432 14753552 174986045 119083298 13820856 452455473 384039139 728031833 659181749 871350540 62038095 281399487 304512943 887563133 363004518 205871485 45840617 159756301 898357399 877491302 678829837 281799146 443282847 618380598 404375415 800356266 236608776 229661842 540141059 556838356 145541070 683235556 17331430 184508706 229101853 470628396 978194161 610289370 732577374 508351173 743851198 852470601 430589000 432157754 254371547 153945299 396075377 335665864 699650918 675228455 146987594 481063134 809047825 524862846 725932114 529554828 29939649 453929415 186059166 805151359 747539551 485697634 176360562 345301260 979746798 199850680 366399649 794196255 245463002 117375507 443262492 618045990 609112283 497503320 180189603 442601127 213972604 883362764 666847706 714482172 398946743 434534945 344488032 871118832 27725490 819551178 341618909 180574069 640878554 301086730 527514209 507300231 953328222 990994759 14403926 691654512 928833020 87215962 91257553 377229130 420710759 880007822 924587841 772008176 463170530 255060350 574247544 651725867 553714655 665180164 264089053 363720103 703856282 972309092 216254138 784321152 410985934 909536017 377034898 859971214 797084273 926309702 439883428 119370403 618944507 770593149 504387711 814078599 330261553 677308286 971773812 254310398 637187803 563316530 594096695 128524256 691372595 334730018 39545304 650189759 202507349 836625384 250035149 300820724 152018497 292802182 215471074 244355547 200949730 782274249 631002081 576060431 252268569 754830981 280838078 111823615 868133833 974825464 481033619 774672736 237846527 123758936 660828895 72931787 934769648 286993292 185801016 558418915 247430987 694379637 230342187 72133605 878926492 909322709 631453325 829592129 891455035 361808117 811407318 481042754 24325138 971970174 873605201 948309169 379199243 188611442 143215096 753713182 904946868 571169440 660148800 163590397 166096874 142215585 48034013 978045383 635345372 551572942 648262737 540388968 569564852 553959885 187413254 692700272 76429811 641215298 242797667 746447609 531609911 862423441 610995168 913596908 479932143 731869719 100948728 274164759 559976264 148997610 199237367 888085845 386355338 621962523 54971281 400594499 519587276 546033981 807520533 893205313 640062534 98636127 576364961 422593019 875797684 644512889 542353886 889183386 374364500 19355117 312391384 44617707 220858174 762652503 389659767 138633608 238724312 109788598 921567144 286889324 732066992 774580464 190104649 515717225 975375060 188471412 170231052 997727853 659572807 422173158 490795476 36094626 525333364 526047515 779753556 688119191 731754969 181873583 126451901 785591793 754899551 310907859 539210959 456292796 916144884 507398760 748371384 353292561 431947896 592504216 977806934 437293799 321572146 841894876 554394029 367795659 208041884 900451803 923275941 687304300 708835533 474077168 983703650 85318639 576164710 965603035 92125562 857555815 304148017 432922881 124990569 638268116 175463369 718417211 91274544 948281498 134556549 745108831 217260879 656308792 485930167 944071019 759544952 912821695 720310365 146182071 968267481 667592353 535123838 170181640 697933568 225010402 578738829 759220285 587159751 436742695 135708908 408211827 653166105 743620160 515335932 946872843 869682462 771610955 63913399 716902249 850993448 917784110 434825976 749567521 816455217 81087005 874440160 581375948 684087399 541987943 868515612 581352867 739755983 516549685 779210156 370192093 543024265 436263628 879214599 999953682 46426539 237718623 806913337 852830315 411698038 272928971 874382733 703334842 69930197 73769467 752485928 867792799 817897772 942541186 858364229 721516184 674504493 965360408 909616707 198463294 588569474 455036403 143298743 524027795 54523333 126620233 802953833 740387191 590731237 362624735 251675076 803748015 274426032 602383629 978894145 899187690 690894045 707060187 825012107 744398677 672465521 717270390 60487944 888003643 896933411 404613574 513803751 143852000 997393168 729527564 565117344 680486596 993890979 427590198 314734757 655478147 393081865 271202523 449505500 591076672 396180395 270345645 315662011 795651797 919439901 422043039 777753200 380538541 636941751 460599536 29994889 17257831 308906897 387192544 590212605 905609512 251985169 428762667 897948747 468196138 823457512 361033951 716083319 973042896 699063794 242878692 252976645 572136764 827970628 938445259 615697271 695131989 582550612 880261456 587394311 120141140 97457291 153307577 412827053 541944286 970907016 35991979 139914953 467919352 895369719 478284456 854236033 506605492 344111574 882020399 958529880 711173135 896669080 542659297 426504787 474552296 880749196 511625370 604585243 450095523 122606541 749254893 519496265 622760210 341432788 970264839 318628087 612545283 833039881 1429617 291515210 455833734 47467109 404370043 144251175 990406699 952873460 46166021 706701512 960106583 65131488 340801168 861505708 494768699 647287694 609028628 196103239 258944935 568073874 422876589 840966977 333633638 936259935 102804976 233572019 253133924 881889114 370232334 786125307 170011659 798294175 999535278 883813721 23924213 394679155 542896668 207772899 880523947 466570445 3250061 960035074 492553393 808108169 72935831 565719998 546531580 530770428 632200122 498601356 566968138 472762791 792762929 979811425 458345475 114262002 157278400 201770664 602500522 203663399 973241484 682212055 764271254 124526140 502953086 694393974 769175328 844237106 58154348 803459341 427506869 582971121 378353311 509135463 5356361 219698851 568800499 68410117 555222930 927233379 280156907 78826317 84211134 148103526 71006231 647169426 779293842 525861830 55356769 550883938 308876488 587602084 219242366 653275579 370691986 460458931 433891431 295255317 144930215 844099296 903057808 920088433 835678529 777351597 430322229 74855672 571599304 284479333 378983230 342063316 886310881 789094885 749364678 745448519 910879374 469905942 390096553 590910224 41627951 611081347 80096887 512315240 680332141 749687632 50400801 511796932 847116401 366640268 890341079 702382926 854903922 724078333 465619677 182418910 835529297 220380662 759273393 285014130 876544978 775031115 934442634 894044646 363552136 451798926 467659950 90914177 362186749 875777454 410409838 722351554 796876036 84355906 217730211 848330783 529877799 622265021 182054686 698324267 341825779 123942538 4678870 140560467 547286973 720676859 686384846 445497907 764297881 745175962 93963604 65125477 156440323 282748356 985402715 156919447 866936576 536205077 556794351 554303240 829144381 295292619 630473930 2672891 369500026 771292222 497788390 154217295 732756427 956136999 502155961 247638364 854835059 564326733 199588101 924906869 949765354 183927332 254267840 583138799 163904535 268377393 562108550 801379717 284904661 93213739 996696370 630112308 441810965 718456771 489874093 420403451 585293093 644750912 786633399 933561297 311497389 814503030 889258827 928887614 545485512 341343848 881678261 91819273 378523670 36902151 371039815 754209597 5758424 113794515 445725360 587307910 551627352 499410396 2932761 760660709 660648974 180573590 632658733 843118815 473328311 536711655 721498219 98800987 120248883 652401869 831921298 551831433 780474192 92595184 962870575 578468038 421590288 795608125 425657141 449792224 390149037 15483528 559416718 24778663 727371863 263447137 462212678 434931877 360354427 120291505 206285756 418902238 985216863 382496577 325427919 926737569 358852773 316587699 2462767 284408627 179699151 269157239 109402843 121120901 678821185 501258231 743387314 888912275 498298767 99596223 190131037 731658590 436974519 188924558 328009011 746799769 236938783 948479378 473510586 958157840 771434732 81123940 568261246 839100856 866132944 443126576 173520351 706975491 872217341 65409713 431030071 99745387 820632857 409114797 63500607 546401670 981678043 675092961 825715869 335580876 7203869 299273685 780605338 154182369 720897438 507365829 504570331 414270923 554956855 766135185 571001035 276451156 548178482 680636408 819963170 928351948 38948401 346736355 875664352 613570499 612281496 711807958 437339013 306292400 691817792 412813273 731237046 389084036 620739571 757017751 843332646 1965484 349598038 789693964 614516710 509708372 256546590 199276602 749513246 636939482 612892275 784615299 197201776 373980899 907558969 384058546 850012852 179029553 181732822 524544600 31376044 206829044 85211818 858916238 628233898 346064575 504639090 980391996 140736879 59209986 158041238 40632814 639364865 27166395 207286655 376404765 93139696 166516142 491117727 578724492 990283099 461633837 750082920 457000871 74737001 892099846 666976835 862880218 702017602 763696469 365616523 648510410 76158398 648579970 343895426 492794443 420424981 694511937 703080810 847651791 817536859 56515833 158069889 163373273 841285421 984360486 557430097 231139463 788784403 924281309 792431292 536497604 549966374 813702024 129669335 649679780 844870527 908769206 932581361 320826209 116663247 320479343 115687295 632301233 977606076 257772599 145980667 880356823 455643195 816624610 136839218 583834220 88998425 58016889 748516956 377407828 208166311 159860385 678788359 990808718 25364695 869395885 77624293 985404258 594623275 720687580 649834443 859217135 329747687 727818038 94482576 177243040 4535012 587308246 939500938 34465599 904073357 632386559 811232173 115598645 148850085 54459436 201379514 454195373 158547815 310351053 56546166 896693697 797203129 684720424 205503029 238965364 513805776 281208548 864334252 535673858 999051497 992896015 66085324 1098565 512408829 57469807 367955691 508826289 709920950 881218492 430516454 48249047 963242808 163458145 719648877 721349624 26019548 417650777 162749791 130073792 936366292 142695724 299025358 765281423 409591932 543661509 36723734 285958628 141194153 35361336 474810097 337691752 340570564 59300369 479684108 824970051 305479478 746803198 968910715 414979255 263434576 658942525 801448623 612622513 793530574 574722459 896798260 556296377 220706062 684291116 370034729 383023064 669012044 422284736 374112952 607964290 868849838 87745915 543786351 392632675 871925828 418804616 569985019 206787190 422970969 289166680 107829724 81427964 151266237 396326929 736282328 722335571 861194391 779400754 375346662 861913714 603390952 522720647 611288811 740200645 589279299 322729418 469243420 821153466 493249339 113669086 554292174 983507065 525580654 819578581 722102636 809455756 333901398 642449890 940049787 269129103 898048627 454337075 564036228 471852396 852169157 603467067 113146382 909738579 582605095 638592741 298351139 715043075 895012963 710042943 82586879 982323225 434723687 222837633 778426823 346819195 599566236 248954966 343548086 925426764 150502271 239854553 775989308 696278451 67379382 279824697 610140670 711562863 398578188 834081048 728576393 980352979 63599279 283860935 607898917 321570114 495671091 754312912 351382829 277253354 597340292 808218881 314140808 620703491 108358489 962778178 108034041 298204766 901907303 312952532 251770607 377813551 889861527 376688617 180037515 288486862 353125588 963955773 967873407 840445262 450178996 496322606 510530560 884681030 806578145 527740996 385758397 177500565 333346182 477177847 728488987 794771618 987686856 212044122 790143225 196209539 202299679 664038903 106859833 857596938 457463914 557315780 134294539 801166350 20136762 300687411 41550403 802461768 411585787 90196484 216374 528285021 737279834 630157017 397311975 582103749 304531643 49419180 832613395 70096628 837985427 934164506 293426676 709186578 378570306 637992469 394508657 437117026 376125284 698418785 802974783 493832198 735516045 88809945 411867786 72214708 680950833 228778308 903186879 739228340 537109433 441255610 21592189 147064175 341653180 496010643 834975299 765730710 233580352 177110406 321339822 187946969 973141913 102782512 794847028 183402958 908691481 916012095 921307731 744827316 409110701 376283108 594122583 901298479 121950032 401525372 320318002 738354907 379388346 809071806 969767530 665333268 891372126 674500018 638211167 877950919 493399838 463479286 876158145 22750183 321739174 246324301 181403998 226463736 818569169 770042295 760810394 337323189 966404842 892725300 942972901 946196521 328955193 363957154 51634219 240334536 82334358 256652082 21811891 256077583 630926210 789540411 842780651 976134899 623532288 97972223 632450723 339075724 12605667 166306901 945507188 873559146 894411 674891072 639186736 516046260 157703652 598229783 598442279 940038687 748915873 489885172 15363290 330985562 89856572 473844573 611070185 579702075 546308221 501750380 305992667 574115182 685437600 694751283 19242958 840738533 217639125 955631774 183884338 146055175 785656257 463718560 255664412 573586513 442823755 831376437 312949734 901082690 684804777 136470187 879503798 318228655 323846801 205925730 477202275 12411796 265581920 608020837 647351020 527896960 874066206 327043694 510308940 242398739 656797998 43546214 716040756 367728319 588059059 912561278 757386707 920007625 985200285 963486997 500058739 960582525 422531089 411605461 327838934 825484501 881364871 689037805 405679142 504929879 22976097 652530653 21069789 455815113 452875534 104636604 872699296 971041699 544254614 413133714 12689807 152616912 877220374 153283782 80755378 52509242 176888476 859223495 12097580 853183377 30448599 231777137 675186357 982787862 203327633 968374667 536547939 723201662 987940159 902863035 633885014 553927268 67933630 256375970 785400134 18877676 405574374 956655727 579755766 340520492 408532972 734189153 968682517 706448844 938188519 84522923 671366119 414537186 816720974 732492157 477652287 373753038 24007174 854307814 933231503 686437067 242520355 112355757 724434043 273215073 239420455 581935768 153657923 486767964 982849012 778823314 404128757 767612062 905831665 657801788 652949172 853574618 993374475 44818119 737539671 128002414 185718983 894891396 646754288 462517587 728405730 844151614 834537840 67501794 975529238 540967264 783206802 481349011 67036992 730389919 792734752 181281066 16558571 226809049 63289124 202442010 525210108 604362629 595661371 482128539 988575161 826382297 601107950 747867045 470967545 918199569 92543908 445976375 289483419 414434620 991374053 630868278 702852388 777606988 289088539 253660822 878326159 610862222 517137439 383340426 123954753 116261928 97448812 630639342 875259923 94969057 55223533 213615790 506078212 836359238 372379408 887813498 764448485 453901634 815815009 467526770 317497672 320546393 352605341 227244319 48952755 335279847 263003486 444399923 354792656 539314557 110697279 25259632 93886001 737942279 306755025 629000095 442712568 4490968 719979770 719273256 945362877 176246827 534281748 584147061 746522883 684621855 886208263 563892017 377720045 351414714 891354610 780428713 381065413 523041089 707531730 819310223 894158001 302600663 555215761 478576551 944956538 192415014 103656955 150235296 267210494 839003010 929159016 944659766 893243406 204378808 907148162 14414203 55395063 130024589 882994696 368270874 263473046 614809605 325600127 826836867 299852713 950305900 432458540 883628679 735265542 622788130 582496577 99667100 16353589 334425115 188196305 715649751 235124346 277422438 1603620 413592983 754977034 51124628 418192486 244689178 597765694 577562091 599594516 629308388 619775282 559371057 352698368 31784128 224338545 672426720 744709424 544360292 933464458 265001612 234167084 553660689 642677969 523550956 565543245 47661970 359104241 506627897 243154347 538451291 951830711 399570416 7995608 231881939 725436484 553872063 830200786 150528716 979015067 541437846 893343282 107297282 9535325 525899023 143236576 913462385 225095810 633633988 151732613 160299076 301745578 390043952 757124942 367948892 488659942 905903308 68649734 22814136 515424769 442215618 773013553 350257048 226987415 690728222 996339848 69547243 303602534 460139134 965774009 473259556 623031945 263947688 950023182 582579768 587974584 961263055 58287290 652860005 540477410 42899487 681689398 125003743 327246947 313399308 310274513 165722917 581614989 146764470 528788086 295849906 170161431 745233207 201994055 32802655 678185078 956264043 25463807 655690334 857589588 428183213 892378154 470106388 71503413 923903489 574810591 124916508 905611308 543014549 767510666 723366765 705161920 811045777 545340355 59282998 280736112 737230716 495381151 939242803 577051077 105011975 706880707 147021641 988700855 679042162 646509868 297654552 626241720 845064772 281883313 762992698 925485977 210339876 706775599 70197403 531460452 605163652 35966549 294474045 645904778 609121287 207965362 835890531 326157386 112878380 703637618 98029919 96136117 258510132 446237002 400012350 187356375 87095917 223111722 430793645 187612565 817695599 568523344 353541113 726370841 306247015 772154629 928124481 602321656 44564637 934908735 460864294 308814166 948007890 974060345 300405955 403382532 373191704 387210759 890758476 783179739 332489765 152831955 838615504 887832280 685648994 782817933 484622346 814708413 415395728 168776342 266775063 672896234 776422154 425751551 253745680 25551833 296477714 46562197 635660097 484658761 771691290 971163249 338059193 792932543 190779843 117126875 389701371 719072689 908449579 837271158 526904856 26966508 986353030 172690280 267525452 416910314 96106038 822282311 801692639 206837724 948555113 295221798 297776148 43980575 464077313 203919046 514018462 126245387 45168987 359799951 729136271 876125490 200390718 206994519 680767279 541148689 189399711 60290288 8199276 456672096 660846385 968799515 458109398 818091978 826237675 826678546 112629475 215770000 506644474 668772921 428895619 23125017 241994029 56877699 623923952 291871343 369384661 390904291 820152444 699173427 658151763 112265679 49626582 761098705 823688300 687598843 201485685 666635297 890617499 214218847 316503488 498659701 467748372 721306194 503320086 96182995 860062408 52702670 692067745 207496051 503335962 869912211 689273448 796578773 766419538 875116189 441632654 153130017 29325882 432399117 343108114 278713686 801626994 918142580 622076241 782083365 665005109 569649133 687137280 322205160 429663088 965864094 326647418 614023638 299453887 279123911 724697476 511547351 716449608 654187378 396901093 476452980 531058576 168744356 338641200 916122807 739300325 744894187 575999113 633707799 689952441 892036597 499828768 275642233 44660347 583373343 270458260 338585808 700122272 701479606 318798566 255959305 943616342 895119049 185341651 779464654 516723107 980549099 99436698 675557022 20543050 959704013 596593348 459696883 384566659 917521822 964671544 208700539 529902594 831916139 378791495 154858585 376748804 587998242 604154859 380744410 349975503 6189633 44021800 867105099 69711410 466363688 212190345 519685712 953652182 495075039 73002223 284202235 675903871 877763611 689802644 575327349 674124619 617145285 94932760 367462759 791895177 628465672 926447755 378263724 184164649 913291758 231454552 90666617 536114868 44170259 477808863 71294442 683266874 158076628 836957658 765380231 492163874 193329682 105494221 193278541 267279313 44741022 188030122 711788418 396754271 785581279 855825810 510578700 903351854 903746677 202659373 415256771 454339965 665487848 782516700 105845247 711912227 717859566 512959107 310560976 921031514 743794087 163491911 894718615 717042578 878802096 894317460 897392915 740945696 424970590 265934682 540734256 109123303 767715071 567709138 805778522 216177058 976682242 829488312 721998379 258553018 803201811 646907294 330122281 997132669 811150523 388886542 507923469 94359707 801577909 837758276 570048715 19940221 808761227 690929257 542831193 241534995 393588052 87031254 597140296 279443692 312968367 879916501 155018003 862926647 953959742 405755990 601264661 377712968 441469275 641676313 967316380 830850546 122037161 520106037 426943703 309193724 473749905 134587012 95006144 118651008 755714031 582396345 384858177 611313460 448630907 934024267 260249735 80419310 353362565 684061662 55893618 867630679 133857507 951606079 417597689 797843498 919007842 147364574 446308032 106505334 84372355 67184463 406019497 700158753 232309005 761498401 241667021 634810771 583802722 494780637 251253955 661254212 499784415 546741408 186417389 92054178 340669270 268136470 722278597 490285280 978935039 926160451 61860428 315407068 933387230 40200021 844056190 692623924 265022532 859533317 578010091 914099762 379607179 245231085 503900460 749052407 257969048 260179493 489170157 769086480 521008276 930726475 523160181 308458569 961714632 660328223 507756744 247494404 816976319 153360788 813612677 846037711 36171534 921762974 544080183 162022372 335024389 661187674 304853874 561928070 341924081 915190564 309723226 687098460 414364477 722246653 579735500 104293851 309162798 85163653 101042822 910883017 952147424 595221129 965434439 915195311 703659788 815943517 669635223 610594370 235884791 343205314 938079437 738472105 175880582 67916751 825295753 68125209 952856902 786658258 82835923 762456590 546944834 45577506 664225204 560041006 305534163 388921812 685490819 640348145 469376701 653220933 957289117 566604493 238737173 801609018 796485812 743877294 567006351 978149825 434787208 931286272 755851738 46829832 310668626 318278591 159765778 798194093 687848995 434051801 434331416 454261831 496594986 395607369 208633192 409053968 266304098 269675688 824125062 215413073 915768439 718008537 258858763 754196330 979966679 641300525 908433372 66630035 591940799 601622489 910872872 452467155 587704757 691031344 967249888 309395654 254901058 682946526 917507597 843516171 441379940 718348774 810706507 199941629 151705059 957371582 734875379 748874869 743632823 796158289 365800835 761060491 955350523 653285146 758464163 129517447 780093013 318400258 134886928 135054476 43997964 457893599 822586145 902431626 83329642 533114065 551995244 8723824 94590997 490201872 531155227 650204743 426331185 855763904 320426239 569752835 691088459 363104475 651421799 918448785 279350718 771330142 751525024 741382875 635363871 170714462 940535802 848422630 377560888 361592518 70804538 221522227 423459146 789242064 867186946 925806204 108757611 590584715 687737274 244850285 273931596 492711787 673113174 852880562 708771705 572090636 34291844 942099786 70056015 456859790 86849776 982699528 498209864 194386352 640791975 730616340 678731275 723017175 46586022 610276011 15097545 739895556 302728216 842727922 375390265 633766792 877389790 338924014 563317688 420498537 305968740 94892058 176553621 957092760 95336095 675585918 498714115 845968028 141260504 422090803 958205577 588632408 270466424 267628562 405108089 84663064 763594558 758960052 83059047 927399035 274766927 602178398 39362063 781237287 474351475 364666017 510810093 599229094 694458262 12054141 836081363 561734449 946624103 520308240 525133406 270583374 465063231 561479572 503001133 518105010 779432386 771219887 644307452 841016745 94409777 459400487 929125759 653235295 412557714 970614804 84047193 941898127 206688231 27235975 108233572 951310746 656435522 720642492 954963887 199704900 976390080 148828976 22431071 421671854 874726821 531828282 611722179 81624653 100479409 766075525 584182497 619220768 699282110 78444019 722324021 895186842 568954946 72569319 795266921 509158170 581961055 466679396 358080954 543251503 696454178 841991925 915112667 924187094 637581565 855645097 474781184 393948728 675954030 888497388 573325050 513249415 340946977 285410600 107832752 381896613 505058591 539928567 155956386 127709573 683476841 247105000 585148224 606109503 252592376 662953144 113284430 263926902 720174148 603512866 867496392 149610969 274022588 37166353 140252059 255915392 837296034 536483274 396142950 322017303 304224206 632843999 99247961 993853415 402552119 786467037 857208218 709590046 56454398 285391793 812817497 139465761 338881006 16302818 697464621 813651098 431860293 425079571 159076108 217657233 236516779 784687753 607026581 306558436 831359588 348624203 360682717 998215260 412853827 529208954 300562948 991122818 950540702 487894688 326942177 148226875 558000384 843664512 582979421 772332963 598469482 246561144 236052826 618777731 362336223 172048221 453271853 927668667 263157927 195210191 166540389 351069704 492794690 509774348 806194161 330108631 611042439 626305354 293109889 207057493 230518514 149240675 165516871 446919595 600377302 686014408 963131967 622418151 929255348 25120357 875986318 439413231 125479766 101209024 68267390 931449267 820484968 9408381 479254898 905322713 717198669 997154885 966458699 12358859 718945642 947037027 206501982 648399063 3221622 989958717 596204708 267328120 186560386 339294797 725915369 861755917 118920772 530582156 464156972 677020024 949316599 391438443 789760055 31815978 85175494 413823164 5563842 230426777 853800833 172260745 677399708 220302788 50686394 321274937 639260029 767142792 70610398 31803876 161966240 219350398 331032501 441273242 360739318 710823714 344349421 185209954 873746382 528222311 768895263 359658372 418976349 983529828 704219570 803701215 295560029 837389205 935631824 244229127 154581283 582398797 355592471 673584738 182381853 252444964 841501259 662170678 159114888 697115224 929955566 541317790 395623054 841721099 825820669 240890468 998858446 649064801 372450043 505972644 4505461 530078296 919400917 648691426 954287556 593127845 730648344 338071790 475238305 359319791 310561215 643204053 490392811 394057680 296733275 292826537 199389337 791841763 816927845 909747761 214657898 573894649 606146054 874946113 346614574 282345083 782709604 829224357 211151761 856628454 989170435 376845888 878466712 949528432 376907724 500072169 449799164 868673083 576536995 964876896 497132092 926931978 378111385 491503277 464998207 328629731 495433627 617802213 832582423 191350306 609094309 238396387 331933423 12137913 53724427 696994087 172461420 181269656 636759203 816850321 636542702 273198060 211481302 985524554 736337427 832692093 889947458 663620085 312416933 294992165 271051812 174421407 959242137 110985403 402602143 710911906 691809698 649528995 427323839 161337811 701788941 725942973 454622946 907492777 40440531 997516997 795155899 970780225 707573243 418887792 64215940 337586919 984595562 448911162 671096056 73259129 204645722 267328002 37893771 339694057 360985858 647370268 124870166 768415606 963359622 715184581 555087740 251862326 356503204 497216923 231887203 599978832 265159239 349944863 584220402 102251532 331429592 223752341 175839598 602250881 520295565 129828965 509727856 4647670 879695586 464486838 624870869 848501132 118488941 593652946 545940433 405024027 957084242 820203979 657178982 614588259 176333574 688564990 848577313 512670666 290845764 818405030 341104172 952745394 250670843 880902393 360756240 814358730 657206516 639623586 379469465 185409447 812485548 543829142 851006722 255754186 166565328 943481577 804836314 548413736 920525738 771914149 198850622 79945149 838610118 163504323 568582944 742881815 596097207 586635891 190515722 623508031 995878131 288331732 910728497 608393189 592388631 761903569 940852794 29785941 613734407 902808930 575878090 749780770 845770557 304076275 574651890 404571596 660018808 870801847 7232170 628945385 158995457 47941577 618903449 277790074 284917134 728268583 720326418 821076101 664171788 13936992 542018685 604062947 46997083 417551052 290220309 68214527 234499598 354349872 234594788 945050177 171227069 264621563 41779323 330828363 914444898 881578203 294625019 929070736 467232381 9776738 224905258 863003870 514186738 243291780 861679841 933350127 741318257 525819223 991387850 336290240 675487523 20032038 657823514 37666493 22277678 206914553 917529277 768229916 436221371 414505870 525681498 854725844 998885606 489023725 174274494 266764603 924703045 907324091 94619485 517557798 62206278 132135591 59352857 626772268 23497167 687830451 493154819 319057928 736746136 127551920 942511762 122266761 676695835 602560448 448660459 326811364 118522096 455559891 799359772 768868145 492963151 408878341 735403720 939363777 287925410 629286784 554178111 565908030 348709515 359929538 68250402 840571304 992387639 429622533 437139064 992541784 493011859 111667661 303496776 354305111 61731520 333557302 575754676 810786694 520296576 927787177 348661798 275406434 289986769 149832684 851374818 97845412 978008049 918666562 243658219 872761341 74014441 208720783 582625170 934975819 428863163 94893162 749243671 574003501 455806610 565122989 392345064 89068833 34003466 230767979 267617598 218780073 296581797 101002992 555088187 847902666 983754377 104052573 326821137 530587837 921022037 718633447 43267180 174724452 259022696 232599606 128610220 799865762 320794220 249310582 414751958 15586544 182562178 184886849 881505359 704928873 750417915 394792709 297585798 318788921 856731824 225148200 266523324 272301955 99815353 547273172 841650709 521064786 182271120 225973964 672621925 865869781 784836306 736666177 553942580 853112906 429159016 210959462 312204930 858813326 305984543 427741775 798616910 626919436 35495308 167819815 675569084 513216770 479838318 418850173 561569110 471858254 25557262 500141815 692382690 332338902 614150700 428279060 928538712 966003650 933698932 874716029 83890825 732212750 717037255 61738497 761113647 710512507 393546440 469708488 164381598 68938943 470340496 447881981 799736875 708227893 984787149 30794990 682807574 836966108 686761774 212997550 925002188 500825316 180584479 786829900 308465618 720270334 354488628 288600499 200937589 237144161 63207820 49647816 493267588 676014343 916317615 751407290 370167948 438758025 250037956 16109000 755740710 819648547 569896128 272366942 513296602 153949728 767677767 285637207 511389407 831926474 941259300 987896385 157736064 866785974 21253907 65671910 785157748 768839229 880592541 530238361 608750864 456710100 974851984 470952414 998655246 142146592 156242029 466818677 400371039 598168891 65575590 864175290 669277478 136943056 700861550 881107596 498201805 584229905 213550491 1071780 700300002 76538219 605539829 128953456 989950326 698485803 15092323 642085442 532235415 381140139 454564924 507645085 858377203 112172039 752561985 209643502 35428484 686205676 482497306 170957984 771987398 980239881 482988185 374151935 278725764 435508659 155971884 426276037 607944312 632139681 198422759 719131833 153996873 338822419 179740618 37825092 331133157 774511528 856947178 76801184 924665501 716250433 323309762 59053259 446054109 833282410 640036571 302590538 966242398 428519384 815173868 502465342 704507070 658757323 619753865 641878058 650656055 134950835 564551172 184082059 487603834 189924317 560508128 570976745 927299103 316772865 24415602 421984780 647460904 503125804 826602576 268585065 519813959 605024446 404804312 404003748 972925035 825542303 357715623 826843101 865683625 473200555 220478563 632789329 442078034 548548310 927333740 664541815 886956726 641928642 702549399 517892694 881614647 48003435 535028033 430819885 885559477 262570738 656738817 606340399 524987381 575788089 104694249 114199219 227100810 825833669 622867620 849472026 516452080 472468045 870122215 675985372 424325879 779589878 477174451 196385571 974928174 117038495 631536607 899985164 610565790 997402636 238698401 769149220 83691589 363651304 109402784 465701770 125511315 340949209 591231356 592824674 542929741 593375272 626178190 832888904 962203737 920330323 805917440 458744874 272293970 844949484 48171140 19270956 683606300 171598727 81797312 539011045 519836172 149582111 295171461 572751107 287038599 549309381 802167331 476519179 826897338 814111116 346681614 313370864 179873593 438795199 101513989 703305468 174805186 518494682 806896107 969961208 11516948 345179419 993909836 24054976 53012578 615496314 498578841 29962836 762220955 46185776 86215914 981901638 649902517 873851027 305978342 744289623 608340861 336607575 157837967 780208966 709832988 921478466 461264655 552105846 497978500 273601786 79901282 689816695 124042835 287219188 436357309 327887759 974429885 327700914 750830354 780425529 186487821 674769967 558769840 105990188 538576888 440970199 968645176 372304158 304696837 288868034 717919236 47609127 830130141 395825889 919052559 128994669 52641575 694861347 949910018 865866297 645162677 855464097 506279469 274525586 421810170 870654979 347995649 192694517 430285653 366280185 858747312 25167880 995429034 820458792 872502777 948735200 2417879 135318034 631917047 327526987 667109709 597072970 49034014 90171085 774023540 483166504 221505063 347534930 106895440 19904541 793109663 679216257 307747046 549997928 255414524 866124911 726371709 378013506 867053920 392017705 94037259 718079799 316492147 982910880 652020799 261368364 353887051 341394764 73970144 156363747 934970767 861269348 231684753 122102752 625819710 860754895 388827816 548471105 38894908 267915848 114678289 320730738 478610508 973010738 124945401 292496374 874003523 581390648 296305663 205760262 789425 421534036 409087880 112090083 394276959 44633684 833875375 808688117 577460420 202808809 602411844 396493455 462241822 876884518 395361669 51759688 229969203 628397189 113023604 122376489 805587659 375493786 762550990 300931686 666066196 890127462 682118276 13889325 824221593 692229060 317542219 403695738 433834294 120967701 956677319 653413550 300132908 26705569 541036352 453250509 475901449 20294824 90379884 416223576 795651863 76557932 905732825 366209923 201704829 210634824 525254720 389056543 926058635 967175909 71212730 166033073 898113976 588475232 255799211 702751857 488988431 330150703 803864581 731089792 82687986 142941805 20073073 284615482 756281058 65036168 683155013 677844501 911584983 714369475 873170685 317184206 606785233 489282194 159772221 722252352 928242865 841722016 104672984 706587739 837055712 237873649 610253675 120659931 382417658 145576445 188606572 21226960 505508963 137028468 440938543 471333380 100806145 203767990 295084741 791503987 807569734 429522322 247843551 395194159 337694028 24617144 703071447 34208257 63111214 494777171 317847893 495919572 827344144 735443674 735076267 144011784 878605911 657652486 162297912 761620650 918569031 849626156 122316348 876866944 317995901 54241076 2507248 870725865 698040585 10448253 198620250 318625127 378936290 887572482 796076814 658650565 774981244 542153309 527607150 427509478 805803864 681869012 867788996 168546781 23877556 552395670 667002111 941361567 184437621 925284087 433094002 524197492 807341847 580795917 525426357 577533058 49090405 662471729 429688485 93566453 671788785 190489391 373387661 189170315 794007941 885998984 473411595 246700009 295762096 312243076 482589406 123609868 286341109 720141271 296120581 392404425 717631623 88826278 500623646 794748410 374391959 480114273 904518104 487559182 874629953 428041678 131675492 965851413 900044945 586112422 16598893 623107543 908801996 851707319 997743818 399270954 603779320 178273382 384615543 143393972 804727812 370474343 709232829 660725972 937673793 671382170 224245690 25213862 539300103 785859709 218881882 266655291 674760394 498825154 106274024 135255428 895031182 793175679 478193370 478860217 66387696 888649136 27749141 97051148 19561942 669796413 98226430 48319151 937409909 17829972 120478619 717301222 770153822 629492715 966290682 777865346 799130152 185436898 324304951 590259839 825661524 405721841 824540523 633549897 503695508 973064433 9159160 269442431 82963355 663720246 939089554 3339473 187395467 787740087 796705913 175131964 107946284 336006945 458313358 858379659 28040066 859762016 540098813 413040268 723191621 28943999 717483511 704317336 154535113 419239813 216163084 923415318 239436168 303159672 535854861 960610422 792153149 863524408 584268525 364646518 412180249 209818372 582511804 509815422 91196929 515055007 409961601 6531474 331933630 841222868 913291670 328316068 431843253 971255436 687219195 710763428 303241659 415383821 956361093 588858037 172085529 942520714 15420258 776579210 798006216 23543673 76465335 610420206 836907986 58123226 464304011 284903582 80022881 374547253 909600216 842888215 108238829 58637138 414236161 154099630 220525849 654131189 133069340 800596936 160045610 33040721 35362576 680854358 882714047 280501524 707004645 262857253 664741834 816018052 68449155 737340237 96594683 274933445 329241999 826538500 646427962 800295128 638623118 951534594 214849580 424801209 574602014 630586437 769848959 736030952 868078930 810780106 490316071 706119057 542921014 8033460 733694797 182953309 971827830 630080114 702053417 498659355 891272269 982284207 689984051 160905763 927443677 519864917 743917542 299401483 564965007 11180652 358006641 695120540 9956070 319027688 413410075 164496645 108465525 721680500 458899473 191794605 171185410 815778734 195078188 711980583 119404158 589913215 537272791 86115400 589564881 705789760 887663094 881685004 654767107 166301078 951664519 857846326 371749297 23089259 385068601 953175424 216179347 345301738 473758486 629000407 297219877 422892984 18162613 712291515 311798850 30369143 116080052 699279630 645772926 749781257 554165806 432601446 38411799 401695923 384482632 386729964 308362539 932892782 910637506 798533250 310947042 260980196 763234099 887931339 419058778 354364937 143791380 924180973 144799235 913001294 326868805 45760984 151316491 925744788 986012302 22865656 269822855 348148519 336828536 658736189 811819480 261687325 520678802 242511927 998885324 72049296 104679738 608241793 848263739 166730110 448022359 85743200 936511906 357598787 560448903 32049240 909827168 784860789 576995930 376670488 291705083 585549092 533388809 434506536 163948337 456944099 524820970 427555151 772000635 67724723 352491355 725252641 59081882 886819015 655459083 444512417 863552368 400231699 682155361 164944250 932283617 664034102 832799301 73934139 328930047 338491182 359220580 407700753 757093266 972789721 401001540 835925040 934121599 870263011 398905503 904275540 422561911 70118188 653905038 472513390 732696499 166644824 925794688 100772425 176520161 185207142 962022420 632642092 566915787 250614543 106881853 16648072 944339969 399957274 652640818 483294215 576990971 535961149 329291144 465550305 457845127 327915376 953439140 399424250 495675105 431316503 329515780 101394297 317349074 962710917 843167378 661809100 436649991 603423339 222339862 664485372 74355375 76845761 615116168 418815367 140138735 854956179 277354208 563640249 149363238 615917559 66388306 296710248 429225964 702721559 500085250 753181794 224268129 593291094 775079754 966848080 503343546 750207535 800482438 833512075 709479431 130244843 897382148 813922822 691433323 931355976 517740159 943564449 282840611 659316046 648711256 307563107 39065129 222088811 199642796 153682854 424166132 844570264 907835244 934220721 581608954 969264400 530686434 28875552 927711912 335450558 383812196 555685259 248270896 684086681 789056525 300410969 59232504 86185684 729057043 394101343 406122188 959078299 139548832 162524127 335245677 868856245 442536192 649624146 824661235 847896223 915462801 510497233 199380198 463681565 756472544 460039690 950654634 189878024 960624640 585339881 92209896 385260609 471881531 220083496 483667359 243595096 22183068 256663236 347784221 236428608 11256175 530224142 390401608 773918958 663552075 886106462 859813780 185688756 593641092 169367406 950133281 206337452 738318089 856158608 757121320 165604964 373793552 430728762 662412752 697999294 767839603 415673159 285444174 213552675 409163582 556131411 113741800 931823877 130104898 805952228 165824647 201095351 436452246 895761407 10000160 416975695 581488479 451393060 229615106 166034398 32309045 832676631 351652402 45130763 800467137 88538013 553667238 701006286 220463623 594258464 962191489 277549362 603006666 716942305 977947166 96186914 226348527 738477763 41984035 983096494 734125304 941828693 385870605 678088302 30037415 962313206 994454522 307527626 94291942 282762509 681516531 316334265 513052893 55025114 984544979 9411443 729124607 40562507 705115924 198905081 463568458 185764773 98672006 610154825 321120218 385429546 534794345 405322338 100776248 826595562 180344872 827242308 777203310 647446444 369104552 906312334 604059223 751041270 929073105 945408960 753625234 630863074 914992124 710738729 502180658 401845885 271473621 757166844 135695399 952324020 657693865 521527937 152119960 47703244 493820945 159676086 90027171 357081319 787016768 350342787 341592615 792775834 381550783 183698910 800956449 419604658 203983242 551715935 76805854 67537657 381252868 574719897 374296700 323690602 983631379 209412439 47783912 277068510 586316723 687386476 486935050 999237003 101977414 26051393 545407021 380520522 854152437 428356315 967838324 227740655 345549869 447099762 432104618 314816971 374663119 137454910 778749508 961272249 749125597 575698500 818051196 443279991 926990876 935181757 378287108 865059425 874276919 211826117 551704032 134870303 163498834 138233653 732227565 62803869 436481203 322231541 826460235 700598904 147566001 777333264 950547582 20432383 439387488 491675087 708121058 961725259 521717204 898989138 601415988 627894686 628287310 279303839 207097330 732418608 496821463 142842739 889367360 674408141 95655381 558069371 416413723 356897820 968917770 482526477 884098784 928535197 251304200 787088689 956396398 98659326 875056547 391324471 712375472 902435968 313713877 797092381 924788121 724292068 344181389 866042835 396853162 905460813 114514303 472780584 866423557 73859924 373801171 5302462 239470226 784524196 824764162 947412040 690268374 501374565 508593285 804327509 923470675 496012033 954030439 133762124 897702989 45863463 848331514 28307710 20910565 97145198 735349373 458606007 939204113 351628379 869582739 130303493 726102821 770596487 518418960 726513398 948010771 997645651 772211919 866871653 943005769 400771392 793530169 585006287 455465697 128909198 115959441 515957738 578255344 908815229 601914764 239231377 384068713 670411262 315261913 477018094 73410459 828592137 451860163 617018886 788738883 57860427 60317583 535263143 499095758 518973141 107485050 485103782 111348430 714858082 767338550 349647498 641923753 181576018 405220566 722045580 420386456 732604010 424063240 182561825 618485380 494721333 116954147 83272766 681273542 977611391 225796321 828762287 723143886 911252348 756132813 472623245 130639217 317477864 957607756 376962902 116039635 298915102 468496933 159781818 478520053 54274145 54649739 419487826 890097795 596192421 16154649 495349012 133451305 430325404 544448765 36470856 735436865 400586919 539904856 122737251 744311403 549097409 331742519 542719505 202882558 378210023 646546269 559853613 514762243 206981707 450343131 87291019 434431149 261442949 781795350 264811433 15802840 256591426 290140674 367878086 620467442 982712556 436584459 473836547 352552401 63286142 865081691 812679313 787001748 889345199 270324774 713346252 10570181 356684814 544263922 802994583 899390759 908983637 400953399 696037351 616438121 155096508 826413049 587021920 518641935 29689109 380442971 67023525 676248855 284560108 573642185 815373548 66944698 232379726 850324686 632815832 140947803 198381608 749655678 69636376 626329556 371726370 595354374 822169002 743777868 727057004 738564089 63057367 317101078 190743381 9905952 823338170 218930969 412982912 656766961 724945304 738166183 575254268 139718561 83510414 806377081 653990832 759295596 504627340 295805977 667018656 581059376 963101205 37210038 201865079 212357878 581863302 200572102 209894693 305944265 941927874 24278764 663158104 913575040 687575054 453201607 317270564 756859689 988222980 841543655 201547649 455539448 58599563 66217908 595276560 514934466 250834685 960223141 566050991 891864463 551735442 789732027 768117346 152231449 13866796 746908356 28487664 330992580 846775268 536401216 878826054 84760616 953810387 164760512 903253404 22158287 205779787 261257146 459479684 780142968 58030937 410225185 949500837 420994902 186961049 700385536 340972422 414503399 807528271 666624330 720003378 27581044 610599605 107339617 928877621 796304629 259796615 121982031 633918417 476015755 191367166 479741682 256753644 863406252 606988134 127990299 98444730 479107706 986985227 78362203 146177797 183233043 61396261 676299946 232159168 785430956 909766383 600456867 252208344 587940735 32147519 601003824 557470693 318950201 876789867 308760234 512232252 69168648 17134737 682073229 792999434 894173710 624226472 396197845 182324085 906274115 806182502 181518702 150894988 770654 453524566 283329555 180283605 871021008 497776309 336977641 500827311 546915556 128690730 715478738 376149921 849469174 730955213 490647432 538570149 525913271 315421583 150836633 378845696 929857844 186001749 840675807 449680871 993609115 129160851 833347884 379714095 756839052 797675798 883884402 906537455 905322705 491562178 312947768 877419965 605633840 782617225 603328828 31695415 305739933 471363279 107163091 213996051 151085105 202860648 451985589 972587190 490453000 6595397 865169313 307364883 42307362 401098298 779481284 618422894 101479137 443369351 868455088 133315024 383734444 544227611 574697066 834803610 909149503 428338869 959050800 153639244 276932485 687376675 356342559 568058786 67296892 351668814 283962523 208608402 165982930 288592858 862413180 938182981 637515669 571322962 658519370 324593659 495225247 685626822 363590479 508340546 68276962 377620409 877032120 831203112 972075305 602558472 513882418 628780756 249087089 557004770 409776381 585146318 334169555 872749633 764962019 30889149 931682499 117870534 592605433 310167136 14703462 371866426 465466425 281870591 181153003 812259676 871743433 350168829 125452685 371914260 211535002 50973450 646687836 597611089 342476358 867481098 987833783 475709418 238920287 601557757 388399329 771441542 94874243 682354390 770025103 199615977 544225839 10539521 377801059 281402875 261419882 678752099 509043189 737058877 368128774 926152950 980119697 818764390 198656315 229199378 652311559 623261234 717626206 777997227 839450212 77389017 403315822 226897229 46312180 827722854 677761431 149961411 865461033 237603295 759878976 840881441 786944214 545380897 907043236 440929941 882423072 859929913 501335277 489239693 404434291 706246536 470962342 180492518 477272687 599853233 791613543 234685983 840367718 817112794 747168716 106262912 777871147 34917117 160100116 358995160 111906710 660361610 519215093 701214088 197069067 101166180 611764054 544361943 810364132 133806331 330413216 114526924 65737861 540878054 570084598 564487520 193280186 214904407 24417699 219751935 807944902 405993725 74342039 98775072 52419994 603425685 925001926 608316036 925221179 818650510 990206394 384771881 543552903 367760955 117008513 719424219 549009920 755359490 672801473 485098494 631453641 457875634 136265469 639880255 597555221 948935956 602669950 237772131 131732452 449572185 955713730 787373972 320090240 964135588 249452636 333018729 204591364 340646330 854865137 859148809 155482299 2300920 17518829 950505385 122689661 166947464 74780770 968559427 241786728 844997049 880172025 766645315 295667754 802591007 726167904 893973976 953826315 813871098 854332398 862835548 803175029 607532488 666045611 795754327 469301708 79778833 251453755 353551309 675734014 92880796 398549756 998772685 773302977 755614003 579702923 143463410 861395223 858902808 215793997 225818956 174786830 355678683 409687080 840134371 795377725 531307346 98944068 99743360 702477217 746618379 915615532 294050715 20854015 902771117 877647043 843202410 862218681 292995820 983631168 257402291 142612484 57604311 379774247 681311531 519977550 537831583 822204012 199696889 851713563 424368436 55247794 320792022 841195343 927076700 694261235 577901156 621272880 354234354 636325810 464122286 404142085 33462302 603005681 377123369 790013470 863900431 997594981 653867100 218814598 311734067 64619950 240340235 633977340 94414727 954493106 368424305 864103549 313513782 970056546 114637515 501046847 883624603 196184246 307675869 205635575 676988823 232673905 44673321 559801189 363462202 90041343 97380527 975441301 13408820 125639596 829889367 455905616 140114176 978564971 5857561 90644357 936594258 666976378 8383990 688179739 328433374 664783175 429172011 579695035 131936203 854903526 1415115 864210349 779372431 875891179 905725121 403945723 975895021 92756398 281343054 416480264 343194934 8880774 295548828 369654774 181073778 442273095 633698418 327725947 717167707 644111178 26208374 531233617 674542374 685101877 873695270 413396046 895285854 448104293 858092645 37556308 381829923 223805480 789608536 567698712 579232592 723463711 59009950 679398153 381405009 480235350 849845076 944795602 4204634 264808706 179954448 440649059 713134951 251299273 677254743 826684161 895715657 706144368 39780140 454891966 867373982 289208166 64726910 757505373 536951282 942711234 495119574 303946042 266332729 141137374 47163813 14708383 977749265 363696228 849393690 973561067 172784301 987944170 607608072 947713343 155704098 171132459 191221878 340405716 111971988 114135482 944052850 993827556 656202578 748717789 13353811 614105141 67316337 721597956 130523907 115152898 566160025 86039792 336776836 729398261 55816816 142710964 514833819 288962398 619817258 474444800 27578750 732037285 684506228 747780263 880664884 257177411 101680508 930014007 84651594 486947538 115808762 434904965 242269064 255261386 895720981 355998898 360459227 562670255 149014552 227110778 831639390 667634496 683791938 463590503 780051029 724878908 903003437 918475913 774846594 672431047 188305792 984002996 114270852 778810276 92956798 365596556 727097865 960460124 635017058 189335395 272861269 379480364 996219129 460358413 250341045 752449457 210196715 649192372 86163122 547114367 804386748 276599442 772651009 755838317 237930630 995924201 214379345 87732213 526463719 339074816 883228816 692152481 73111344 23836082 970482474 86681203 393365891 90832852 259066387 295342185 436229286 617106831 413271338 671603600 143604665 766451338 822323290 578065023 133221533 864201201 850283815 422878496 179303081 127875445 116943589 205498064 76794255 623513390 622992296 325095207 418432430 875190682 253966166 288591111 847582408 628681724 439367135 97230407 379253652 865269374 626955170 583659461 933969987 280025590 225380847 738866356 746583490 505973181 541404784 957476311 495924885 794825394 945818501 566205905 268607250 103352965 39072301 284617349 736948339 146490882 291503092 344490652 618705113 661652495 391577025 179841325 281831016 384809841 135258939 99632998 421628872 19337490 690460462 876643701 48206179 528744399 19498206 965433019 645758134 394578954 794165814 801006264 345688831 196837388 417436445 996111587 678351146 7076506 672287987 947384872 875395602 464540415 490419511 157530519 155535436 178100084 599027541 352095762 77947255 523535001 295659008 500042606 914186904 756655097 575290026 47796085 950453960 433541502 188198288 368871079 766443347 559445808 454522082 658199463 2903582 506078984 379702033 842571853 990234434 79683493 369908462 142722597 223248655 4395682 251721478 609730517 402465829 474239767 546156435 540429421 695902935 803302855 59515453 97951506 153437496 144816711 760491490 745106910 715620005 926855087 58890424 90045438 191512694 745031244 681767760 429552775 37019174 297262393 29206343 43261764 385277360 903257697 670264461 291219775 918643681 516583645 332609564 596520618 73772405 713120370 319279453 173093543 502684653 523287578 126325694 532333620 960149183 181742644 224824731 186570182 761854069 988016291 277546942 74614630 534355255 394115298 946515813 329501020 776534469 985012546 171406052 470590822 55772649 791260857 376126980 808185572 397876124 168991997 509961636 721927634 712393649 677853537 793588251 387380275 396513852 368101845 684389462 307339244 523180713 573522075 11095638 946817317 416288524 615225911 858339064 468582344 590631210 474823898 556389171 494960981 481653568 601535480 54060957 276363618 676502683 255322439 803766879 383732448 347796831 71278734 272807038 907666716 647115758 285526248 911223658 642318240 379022527 958830476 258455377 618244786 765880511 301578374 155992538 343333319 816982828 544435735 432560380 865108381 600023582 663222943 30499300 907739277 944303555 535128469 883325270 317462041 651675566 39032480 364580031 740374343 457555566 936558059 199739836 689972230 81436360 525645272 249235725 329800575 672885477 183516652 604677448 298660495 888366653 27220043 864364809 350128558 807700540 995552217 365288372 615254034 446855916 363451658 884021159 583992595 177310543 587949792 945449639 134361926 815083400 519156152 945740926 358909356 591481579 740781279 956976366 269934323 110912297 806377145 191106510 232815968 122332407 698023032 924344781 778506522 529147603 772571366 10642200 158564019 689479189 153244509 173946566 203479946 344717095 79926841 619404814 960973521 469368083 322774527 934620126 258123079 83418645 373236769 945637980 500396997 499700942 330999852 462533879 993462713 951418447 333510118 424267779 999214679 378793810 324600016 130974744 314671796 395036474 23387727 995364160 147214975 407343443 65592594 239647279 483865632 404015718 343153818 441750160 596512796 968032904 668894394 532355023 764455623 380519861 632293002 675958110 770120240 78585773 106393844 450988939 917040810 948467959 186731206 660163511 528701913 582100319 140540581 80674966 620705755 99523079 83110754 416876956 517385192 793166258 149797115 238825896 124110555 126393833 796494299 101356151 764350783 215281093 982344355 731999175 111321394 583862528 870935043 814679164 30215130 68419714 596243389 156557955 627385993 132212121 88573877 666717385 996000322 340169800 899105506 268482099 953782148 328795518 600967441 599360404 132798488 309553746 979162929 774216192 576155073 282056039 297000715 69306203 119155258 870480155 257923229 105778264 634222192 101014795 483537606 174314967 575740423 221490783 801052301 273205387 911028811 619698059 874424629 178013161 193999032 12146861 628798816 299701593 1135176 191041221 965444272 531976128 344065598 584282196 965002191 995563402 795168410 600106942 484747374 296958739 696081661 111703437 912196597 322523564 626403413 376147986 558076877 501081451 208861450 398716152 866098255 90946966 559403082 966817280 259785220 352281732 311807315 626316855 536955399 587269687 443435422 124673861 35336011 751907462 384588861 307781723 512085219 508246311 353264898 378109833 359428417 835514686 465450571 554835654 905377052 736478041 196965142 163263423 706751571 30275583 217566790 257393683 576567993 199536928 824946971 47513634 507619174 936628108 754754963 475305128 710325856 316055629 762997584 177389225 975837336 702802515 473635058 371226840 229473695 437973040 872622051 777248120 399123903 228204722 253921500 947381166 40040472 664203054 978316749 646521936 730060405 506706181 429876182 438955882 221041153 374927946 558843088 184035218 397917769 559725357 728645553 225851335 552098454 826541604 226361454 506605192 189569612 196337902 532890980 152741005 531133114 3956956 647474559 167612742 544032677 430050369 222536480 17227735 86352844 884870526 500592853 882821542 992348160 589256590 906104056 78939389 186545745 110373958 671256532 152458658 36650559 764964308 720722735 115766710 443928569 599893218 563945286 319068749 901434035 537509474 771208859 949679819 882323905 813971224 956247503 885948936 660481888 284432058 893898251 15139366 526004740 951214684 57450333 297058161 234377841 436347950 690149471 421279760 118632812 541348705 801717598 39933784 748003163 425348536 440288848 579683476 737838519 28894846 589137416 924238795 10266976 11452968 712199144 523403591 90319951 744147309 587249967 591206519 397198036 337595766 227210063 635629535 251344906 27695704 746650065 809081348 837486122 715021068 852382664 370160627 869034492 955288995 131612783 785582285 607993586 251922590 805503100 387842101 939267759 71670509 350682451 756142742 989117716 225101643 104232976 477274389 394163798 495507471 288889893 363311327 727911548 386517863 795713314 127934020 194037788 596681007 866006362 160297746 238018930 408712731 491472673 445988221 182821821 177897306 141469264 462893763 675880999 241489662 757193706 947496064 600211812 325339765 104467822 926638180 491097495 13595697 615175830 367851040 29039989 265649868 165784658 363930993 513945794 783923613 76899939 991877318 575838405 281026728 407573236 638111373 138219555 839027702 912201730 714134870 295635052 391612170 47410037 729578026 629989769 93342655 605259427 594855272 656985954 365215402 88328703 406372115 212101254 871211799 389785906 481483014 102009725 458954398 157927918 103583721 700427528 192663394 441007653 745630096 651190769 325253492 498398711 472139537 163146780 993763304 903924201 410800803 421067452 633411348 279304579 630254681 35436267 443169526 159780449 894911444 860211298 65983855 167428706 482612804 887365291 388226168 476509378 763306766 810291620 125854031 226571263 910963192 491667154 784707488 902318802 311872128 68347232 744857964 693423675 876992786 620627865 774187708 103086097 411289677 790083467 735737944 824885926 405041604 509114858 675715013 860289905 185606492 154495813 764208025 759872057 418751576 494932935 388973797 154561694 943331531 321897099 2525744 687756981 699365954 451545122 671430253 523504560 674438161 168809511 339508702 474601263 601308163 940948017 565665524 955234588 942636770 494605384 43066955 426894439 823857291 930469202 240893867 517296878 742196945 891103937 730450063 265813685 50971765 636725391 409045496 74858171 836615626 172792271 752198849 708145662 94379176 123626791 8029840 314678256 476812465 24524833 42176091 240122267 971709651 512493082 382905004 682796040 409836355 275618407 507542845 87525585 880677584 751616528 762511757 975753592 675785323 636781858 440747756 178593491 227304502 516162886 292459470 135231984 472375746 820060396 961480625 711520660 834619111 329403186 964071097 467017180 81489525 534904785 958604493 561770551 633627608 345215290 222689199 220826808 179414929 944276408 903401189 250740018 816686583 308034290 839258988 804913988 715078961 421155691 774407346 156931522 439860221 699045255 541365875 93569787 626737529 860045389 137955203 41766261 336492200 890104432 856574155 853353201 549111783 367377487 706488354 658541607 378499352 686215459 871250441 917553750 25483597 801728149 78325169 261446059 946258301 821643297 910570942 603852932 829481378 5037313 877973192 643928648 77146611 420100479 801894454 234061369 870830230 881219865 673832656 250919062 873167854 454639472 609078970 331919252 628674712 513622986 902047153 322917726 243198509 46901610 647905125 103723409 480636081 293567722 249002781 82791514 527014568 685087078 432104341 947762329 235332480 235487516 137930263 42947497 985464625 61222958 10337744 580467179 504038767 66536041 675237188 740505107 869419386 607856967 145906902 397353436 879448410 359945247 597562880 890133750 255905095 726297586 903561967 357282363 183777328 124196864 534070242 418558968 769949691 428267897 486071874 145137566 709942605 323744981 212133622 371389609 344974019 463061734 357219347 751801290 547220600 486255822 984363077 612268277 778277743 278169840 852477904 309124755 657305082 188448071 725171463 965171591 480458178 214718395 77387001 94453890 677279027 723029114 605775955 955399803 873196340 816989426 630785290 847066977 933264756 652234530 617574313 215096215 303286146 724544695 348605981 348114114 76667488 293457901 394606426 712364815 733570301 876042081 815247623 364258893 426838356 596683582 432191913 977417202 783826287 468746761 126323736 801390413 928282271 333277341 303173809 147575777 207673850 556366310 485334897 750349623 909728085 479713416 771194673 220604390 180957469 29863967 161643587 674799283 605822466 288777401 279671063 547786278 359225970 811406901 901733758 394256877 896594841 390920943 190363179 190224814 724577460 511882249 226510796 230560255 467027712 387471741 509199409 978100443 475441651 885361110 455089888 165984364 990469830 567162697 456238170 970841813 562504985 888946145 560636900 750877932 756644230 666586476 820286822 411738282 807692711 654087777 422844605 645382150 492294854 877092593 75084453 831795867 788879718 891486631 198694514 106762969 322356935 16510563 779027954 897532080 917155544 14537074 388256326 768875548 312635103 852479377 354901640 843220269 38611396 148057263 392297559 777967448 739371268 495861496 905091595 687491007 463142875 428027713 7088625 349201499 454609574 400476177 483026398 815270670 327024774 111723145 57337134 198301487 181847087 635658776 708612371 706361063 455799204 67772163 571700615 271518150 617070935 821836027 115065599 299603105 623914226 376197809 157078014 782042502 346365065 549046760 419091371 868469731 941430175 157688110 558919633 478171659 975561699 199952390 182832317 651757979 592757853 76464373 502571492 436920511 797171307 552775056 701785340 838590273 409612684 83149764 561519676 163256089 118437778 217628006 311985844 275333945 259187625 866377818 264217787 781237319 266638869 849527058 933866861 49140144 951396321 279841035 41860775 234047746 451193543 946056274 430366640 970867882 931888680 547717051 489323078 864359992 670980296 322897061 899208948 591763564 62356925 676774613 340428102 597196025 630172195 352922348 152527686 17178788 3465794 536078163 597650767 66647754 392129927 893220142 238199742 462038320 404494140 961875312 332385921 544482077 462566181 962878842 834056360 675596644 572206938 265452073 895800062 36739793 341343712 718933572 583802415 344454432 508134030 129946804 742944112 238206452 904137102 306012261 799881813 678701912 601482966 524197779 812952119 241893772 261139319 60279701 200917718 262378453 447345995 642140835 126182977 818526338 839794305 813123644 868373056 182117444 866360736 256416035 207959647 336465156 951505216 456455892 42326605 217898032 522484816 959975173 278317938 686710629 996783274 777022006 217187917 149566516 501023154 167526634 892687752 571854317 871028500 628513701 417970385 829506353 968994505 123067859 864125884 412661052 550582766 753382220 884716915 937940233 940656737 635871033 229902831 590793988 100629447 378941639 719194070 454963951 422694880 710752456 392791730 99138765 449494889 148722410 405173297 495172142 854586992 648337446 59113265 917397938 780803402 132286179 241872611 747670172 966305641 769691994 130589437 271460278 831845785 876558513 12277445 198635269 832700952 62764230 295291967 680362842 182499117 197040396 940092757 608275808 143303627 460082674 566366882 256849002 334332287 657924328 453961554 961591060 571240361 800881931 771863151 248570584 731765846 614655350 105314512 151056194 820535599 185168692 537729960 109121896 48030459 787184 857679108 210508676 386060412 355624184 514161601 463043985 212428028 812167794 21619793 737159197 11097451 44371126 343799938 348299262 996496793 533226517 613096798 629979296 943910017 231746490 236499003 509927678 174901195 823241069 540855359 810717980 880470953 106652764 256489764 378243255 481471200 736366134 391437700 315315844 183434709 843022259 399284696 701938716 198099126 696591992 810152688 486297429 996656053 851405409 866372278 959375560 297302874 106747630 728161195 676112786 40016080 830466559 222922183 124881594 825703590 991484884 699099121 611694828 273285716 941667326 647131650 98135714 734122992 189512673 782248799 301834887 303498203 639200616 986902049 691234460 974769082 286987217 325720193 953947415 41683132 916285485 845027706 767823995 455923949 38925129 496147690 351308493 846995182 142706064 979739606 365783438 987556763 56203540 457086565 756501923 13025079 467861419 187436194 94419849 390473960 215813701 739474078 439611981 377028809 71109304 891945686 828150831 297707107 171696207 642306315 359357797 274636804 8240722 464812909 113867272 880019631 485340931 658570920 611825659 908717784 690121822 528872111 553988460 654074361 3455956 125684595 756689460 466078129 673778701 996340456 223844646 503229970 410865916 799537665 439085883 404329607 17105746 781096912 940735090 106144048 808333204 101720056 409965321 86204587 609202368 430958369 666932740 825587881 263588513 14547165 287186223 200221031 188390746 685495837 930157567 634279761 182474895 416263506 962134620 215052186 820932500 16390782 211189151 541302819 476141875 68552870 407851394 160615244 574390750 425109497 918343695 277113712 557108229 372019049 454243930 626145399 292908231 768495041 229755824 670096077 514785821 999986654 971608457 645176112 444704209 886432291 285594092 551105246 382559649 174156464 353891480 424701797 657314526 581541103 634712234 933802800 49651619 885947476 44636377 713077633 581560528 238382978 972152284 222195753 800017160 443185684 464697839 277669555 715703069 844196612 125197044 142889365 538207462 888339011 665297921 589457664 885595971 407225376 825851977 210802628 892364667 17631985 499949853 495065314 763687055 519326648 965382945 23199316 760791229 874365101 348169228 320441616 408175766 959435549 613370231 17068297 975741858 18923665 537585778 632419706 989772625 757718932 151829116 870932892 176253274 493542595 130798378 198690883 855332693 638142877 866370368 274391988 444226572 445105999 543794492 662311905 937981724 528927381 59346175 751950203 83756900 468194414 996107578 786249934 773388239 323647349 739383971 895254919 792943480 864532375 506998794 643362246 542202436 159697521 130594056 511567734 814682317 784847503 444518092 105053400 139563237 90310535 768359400 200319406 60877533 419643886 475234393 412212452 351525607 339271452 826795210 15930009 93557945 387480884 943914947 770488386 910733074 151672540 886615596 813141691 336792982 116348058 37826288 64011015 716662832 444897906 646600301 472856729 598900269 73749739 352138183 779226911 830909569 706321207 565275221 999713303 225738852 20462766 290322952 455720881 41442685 496101286 414003139 548268764 592402976 603761961 792204191 290160717 817974360 85511484 123096820 463150693 642641192 900332091 302682866 264168199 700338769 438397224 896126329 638456060 231015188 356408772 850878886 817073725 574888717 199006622 579463561 669897514 817015676 291271009 886332353 609460800 591475838 25094638 213018627 51748338 780047685 393182408 430741615 407947753 442292160 738889020 985684413 214901935 951289178 616331653 838560953 913438933 491431573 88323550 661858382 411914102 471163285 532066483 523494001 848775044 522490013 210911529 547493989 376200578 543400013 850076011 86016917 603601127 242499501 932319770 911367892 261646164 597925565 453238201 687112114 172134505 727809418 783975612 932136012 624583489 922803544 60235926 76516055 676772998 664566577 109974811 190649521 485311257 664613895 586666051 842176931 358102694 565609137 939966201 863106356 754449038 23451 893984302 948312338 46154127 74578572 875485622 483328124 782316109 647126717 658299864 117128825 118192733 832679151 578457835 99578237 944750408 754649479 351401415 259311932 669579540 99869767 237892918 913464774 774138316 234506975 379180125 252766496 654997357 939010862 550988070 597318523 769530944 897770297 487499215 461982620 81740822 496373697 729015168 109075780 874183996 830134471 449618384 302280662 86732646 803842279 468943174 61835606 77116085 597159115 162475143 876748836 249340927 905300800 718365583 538494937 496534038 214799029 789135050 668804609 873050772 903151896 746586632 53522733 242833105 193535769 484053552 368947944 905241557 798949030 46454234 443271284 667537964 331847056 95962228 697182824 857434045 422056280 42150671 971621404 752201543 603175140 199739505 582009593 144611559 829398343 650412630 497986848 705164926 501268181 400553535 841842896 134538221 796901202 376376749 684106653 595538671 187729295 277044404 638067069 214080734 410792012 199814557 484728308 963861965 967264673 706727051 918712715 347533742 127562296 709233783 579238950 181849218 385542138 398012762 963923851 312840399 263895377 260652012 92504333 754379664 355009144 512373248 909937290 247733050 160485512 160384409 44200215 472280487 952200557 928172828 786584943 739612461 788196386 722002443 948658140 806692503 569319375 397487480 835649221 607037016 397417237 590535932 610901004 126996771 898007247 911654142 794170832 4209582 287750719 208304288 608800220 502825983 41857456 397051078 254709214 420222874 988274774 564623345 357087146 342979292 606220287 482326667 559478356 298664989 987641609 15267972 593849108 312085230 276101743 112164169 705408696 803388387 771408110 705261938 302729923 210033432 468205419 317249874 958312435 995918388 281216407 901197572 87930207 332205395 959917784 268587789 951500783 761914758 523073570 624308392 178162263 202064064 141183929 987823682 83729573 383382408 574242076 101501190 758362256 280978104 300190939 483742096 155291136 528047218 439799333 822697906 151587148 347797512 523321817 31932976 405306013 930370739 105067403 372200585 916189950 612274807 143384704 556755943 997752472 55015800 912948093 777950377 721297557 841130086 127818344 344382633 325652891 417268487 840743166 959743106 452900645 61095609 33106262 19990355 737349446 669271544 742451314 389509998 422825401 690289738 458054854 86132608 394917986 995203341 876312108 580699347 562249394 882879170 944195173 928837443 824547473 798276670 890940903 439409888 246398171 395664916 378169024 853492477 186980105 388067948 892704111 946777519 66031129 477405461 366975385 157349219 88922158 1484917 719673155 774383209 620247535 840930871 841912424 656136306 964322051 636159756 478754209 12337452 448228469 827382513 32048685 870303091 22085167 46062001 817740550 959696410 136034148 692219386 129744160 237033282 722859108 661085501 187788900 737371005 273988599 774603607 533791816 648189588 786571782 519716537 598385289 708795387 119240699 321652432 463563625 410543368 774423424 27419322 683640950 94727277 30014694 988427607 942752047 796800592 679266195 760032805 993717993 862978926 67414051 971726608 18503943 969730383 280941644 1392855 130313746 289467922 525348273 684912181 984857647 954701571 505484666 96788766 727817407 347983769 616422610 848092725 346880293 939023460 827875991 193007306 883510084 694435109 75855919 345131929 148066056 330833276 467438813 868780791 242804645 634749938 390203192 671487334 648782218 972554974 181299894 932065565 229069268 835824190 10149489 322992370 848405061 239143655 658088479 762561183 65702004 850731913 673747615 578993711 819626038 650394720 460593819 569719989 710904062 426833257 619130550 966742433 746121748 723095120 911089868 633858646 409589399 958626824 19979485 763873947 463782712 830589682 148662020 494966794 656839868 684342924 400144579 462115617 140555958 118089490 795526480 511981277 925001551 568718674 237862688 10938116 860880910 774466335 265991081 150423683 110310122 470801926 294342931 222015382 443473322 812446243 774264025 761845562 361752831 493184402 498937808 283675919 714349906 171334846 282366009 421317399 793959876 210659310 748232709 328975883 255124183 298024126 256192648 615335181 739065940 546680064 800861602 641668037 654745955 414983517 276947177 390390199 444952554 62672721 914442523 501604254 650741725 984232255 539696282 543484531 362829874 771551369 657938851 103587402 677070861 873137218 72491218 135926288 700044017 513350918 223910158 226781344 237212822 976505330 515032180 740160477 476972344 640754192 337900927 808793094 980062242 586653782 847294966 708824765 21070816 207160901 502526695 788496865 767481907 193122297 543921767 13987527 770455477 562688821 408430429 160458202 95725616 267269224 824262269 838291496 861001282 965237225 458828597 422514466 273000877 437258548 489286961 388247205 275015763 924453036 283872910 496000752 958636598 791851057 577683962 517925334 943198751 469089783 481493830 674830825 951980214 491630987 368921421 788711867 468400165 174831940 445892081 961055811 810545058 839414872 337165499 693496168 43969300 616963405 115155317 777491633 665153701 816756104 685970273 13958724 441982057 99484615 179515046 636970524 50693770 951904483 631468132 470463294 783361246 741911222 411975128 673538153 665748604 181330845 329677764 399285640 335641430 982649393 46927537 774441912 619002419 800237386 65266071 21579275 961750613 120523422 183407917 90370788 210532038 361794753 709453527 379124298 576854534 729486742 194854559 435319989 447978893 68559066 39113574 166755588 869427088 935533151 991139040 161736438 302477986 158015770 384567521 39472015 957667420 31177424 303660043 711449913 665296452 806885586 100281046 787676326 896552183 452895104 474158428 684680208 467038312 38907200 464095964 663015839 350371545 417118742 505825215 479658200 995995388 699323817 811089835 891798130 306908882 899880165 279294047 523711709 993969533 40324397 781365938 913336471 64159835 769313987 617878125 953967983 85100596 279442340 537508732 640756134 897345109 83497550 650250811 759431800 196765521 782585786 756708031 319959484 937607861 279420229 806051582 11176859 425436922 366683758 982558056 603409398 792364293 101084782 532334108 177834512 746362656 927209599 207282546 632471766 3432883 567194467 722809525 180937112 480259308 571411474 443865824 438631712 992782505 106629900 988936678 479653916 76085259 486118192 347139790 971278452 709084005 923816210 561018341 281427889 678652368 465812448 487729313 778497691 630131500 9321225 65198698 254143114 639253241 977488475 60319698 77454204 524531332 26223694 545079116 189251613 123163432 853942070 934066449 610631478 733453230 984807095 60003534 962613827 80422666 573074173 511526835 521518445 904770219 162131807 721848962 867007028 823601050 755979198 638563099 27290694 977057282 722088930 104674305 99420174 197542340 353861524 906150565 356831747 345329351 618932095 788301093 87612896 638018241 170747161 377896718 807373013 628419064 750030655 451424752 283225095 431212209 217430 531035100 593524104 696233239 109083007 378698285 492128905 37786596 622242830 396625353 899931531 541425535 840975879 399212301 198942779 436628600 227897024 659877457 947658694 969933089 777215769 294106297 915928724 549471535 581272022 624771084 215305588 197264299 320872345 380990503 659488296 967339963 935730810 792710346 418040460 787158116 492949452 294337949 393130600 446804773 734551566 268519698 295686492 584180258 287874308 17146644 404318663 853852550 301128195 115748587 252235337 731299925 182941175 586392662 16053305 932742726 407286050 289956958 942028103 407107054 562120490 24896199 728228830 311930619 287117120 165772291 976207020 514305874 439551539 891097032 235558802 182763504 451344834 618987903 30508728 151906607 131462638 97491525 629594706 865516236 184161430 877851810 897314670 906516130 933556181 662427886 517241349 44407843 145909649 556413504 514680325 863089877 151693215 895793057 706223929 483180936 705833160 775008702 971705382 873441102 144055231 570933952 685128990 191287661 531040067 491817179 545736273 868785860 695564779 824147199 833344018 383941450 759097852 559436530 194008055 989024487 288715063 865164296 715616241 859620070 762256361 809417609 848808374 866989082 986231123 530623925 126383317 497557927 292661226 661471775 354292195 304987069 388260807 433986864 705969415 409037357 923666880 88362634 204802690 368522249 509123135 985516811 629678784 112439591 96928023 552882528 558211429 170056951 376932291 64738509 660212462 65577049 277673861 435357040 874266 513648247 48906328 173781552 781773761 527134099 512812115 288082934 365354410 424162674 660561398 498994037 308197394 146948193 352366376 284804770 65840433 68407393 368527425 630690662 957978025 970928294 779418875 577537829 430720348 186056412 702378942 791652006 586381461 589879138 473387418 819324519 673547624 72357429 797722249 521104418 997676127 354050375 328991374 615159360 200786296 433105362 509389785 498254758 251573816 246559149 364543684 993422906 690588972 794638677 631463232 501886435 650551984 51330715 726528805 843677949 461455986 288494986 495753047 325675169 518766099 549544186 667101604 487359676 492202033 786380166 839108153 465657746 22993187 750583453 557585649 131587899 150681298 54946429 640014099 380482159 522654043 35188265 707537914 690073751 685751257 686504743 692697169 664539460 711148201 954808448 700216758 918957386 772036197 263937865 623031464 627192533 875897897 911249805 795015358 6402547 174213323 746047012 311016252 535483903 832944910 725243639 924574049 727811731 527456135 927880476 633237723 523691200 977764066 819175232 999001363 672639353 763114065 778698140 869175385 729778907 303428528 983491761 706060342 912368548 120048026 91929987 698615522 674476318 119611284 956241459 28659396 381469879 301613270 402499689 171215091 974699317 829027526 901870953 172864972 359912654 828267434 460834186 212185290 140603138 951852196 418944170 719098536 218071521 831124206 281651681 154548803 266339364 805675770 854925705 575001348 752028181 968561404 430892188 669448889 842536214 798924239 467547055 521998947 331670576 764435961 70585102 986638410 214458965 174218141 593518413 530575392 644203417 404989641 631615634 43130040 887867438 150568663 400884360 892768649 99580928 37116884 780672569 383563732 424580675 610248351 717474715 614858849 957750208 716005271 518856518 885723937 69656006 996645932 859964904 408392661 989471015 318367259 93285351 483294050 594933199 189648356 95813685 343642536 69803725 246209105 179084738 350918172 568024930 179115503 289364964 901784356 212900717 194211132 851403869 771735988 120426481 691265201 275434168 42133726 483587724 258105665 888468783 453618332 549639949 211897674 19926640 207265910 553021276 325208895 41066572 522565093 238174586 227056351 179783894 27671095 750778730 43309022 998792257 672692625 435392381 419308998 730798462 746828570 739190569 503923635 187021149 263318381 421526349 67947496 228111569 861892824 323852328 344696607 85802613 775436002 95597447 831972323 944428103 943099849 619368899 730841068 532950995 997380280 425088685 835627581 504029772 959094649 437687884 523362602 15931838 931342940 126872800 266379953 759521614 886724903 757878240 78634434 446574213 279141945 97843528 73251252 305083916 911471579 672634524 412346274 336227510 13154030 218956751 30088264 772961 688053603 927832812 90909135 806817487 444978033 38559698 566241674 164016690 335661182 502834829 220854418 575792987 901841862 712030274 608005113 695342087 476514698 6855105 895808190 376349315 488352780 860640967 274763760 184411493 211407230 382149125 301178258 716083837 829282484 604454054 100315306 645335570 44442331 83556733 926558353 100503979 425129214 729988968 58430054 610204883 486621912 381740916 830399697 647590293 678889136 370149393 921813150 143696436 444626259 71320214 195053270 704272667 472296874 313433447 677984805 420747755 83000246 845755436 839320641 485677185 978908365 155585968 272658277 156643248 657858626 531467562 30375188 945629888 805015195 399048598 376293602 846320741 616451143 696511984 642901970 406927592 316214379 216498860 114284891 994890558 214347441 634173248 5164073 241426598 698710767 532060175 286771887 386595215 702944085 250375454 663458529 634603259 717538458 104400194 346341867 388682941 953469741 497473117 418972199 943955328 405816934 940650420 449972658 306623371 962238747 557315462 573169438 16101522 771602322 691574959 913395297 352714758 337042828 690320039 64776725 32022077 482538450 276117201 325213367 656832351 493341352 713068683 860626430 387826177 347316545 393738785 357003535 364824833 760513065 78462856 309872570 204147527 96669586 379009854 856650656 373423176 193861589 997435469 728539563 970973318 238203910 180443375 16249248 232269922 972576422 363557679 781090890 228197070 357102361 379032133 305198590 556680247 836174591 301848886 54063910 97825334 626321669 872004112 390078986 268897889 54581517 753261781 620912683 824713490 449876907 70190737 209528119 774909967 975605694 89843036 179478668 825569495 177641120 848967593 625363433 109371527 197123719 115989239 144673939 869447326 577548576 815510174 114086363 644364632 61836068 665200678 169454836 438329341 305162307 219398822 423710294 109643758 225911477 102976453 603492278 731256362 233631514 768245706 717294321 91163537 239459254 209549018 854108308 248892040 500212051 36281422 861327962 798740151 883443911 507179297 857108343 965213289 698892993 315498015 254591243 241012990 530042344 407093116 568404362 821609751 687267254 664784696 123636994 519253820 620446920 193713990 1341937 232272361 602549197 322945650 483372382 909716550 936042465 377610102 832922485 629720911 387948838 831585606 328042637 824104303 598181570 318115133 621288025 726321486 114542087 440717426 735404515 777562448 84790709 919246747 880708599 523451820 907090796 601390855 956286772 302488901 717239115 831739786 495971465 106890524 553735372 862569480 277409100 589379065 924403998 260401269 828998647 481502417 400013322 754199029 891835256 802484726 411379238 872152610 158477928 361073777 602313848 322825327 860486492 726271817 593560514 300311486 630221803 361381053 152086811 441665067 561859471 619680434 910942903 936221392 662257427 114435619 313743092 670455431 290587094 155162035 737743102 652413211 741934578 711426892 942131370 120979601 771300058 754691724 681870634 928873962 887402954 326138646 916101078 177067934 33646163 864184490 839999658 483299193 105690324 28065960 643946942 543485635 394535632 600222719 690564087 341566012 425996841 247465008 214622446 460367182 726432757 813936969 921163087 485999021 788474967 628562682 161285823 12645672 172639948 34421853 695378107 630418011 648243025 316928542 875012772 478078371 987742223 805795603 32133082 498574363 537964477 253198880 780018289 202895489 841092732 909793685 125203540 771516010 919344786 324379039 283988784 478501121 507483920 597796276 680449341 90007231 959947380 866018077 97260735 505773884 188953971 705534814 702837093 684592138 813116659 509419981 284179523 282787438 637624849 227431983 401937620 753717472 453124700 156336422 114521003 423189602 669325716 240474234 148798708 323490688 540060845 993649157 224533104 458652309 378838172 988730530 940592964 779341211 220611236 650921966 487963833 1445977 682082814 935817646 741118682 690231143 981825203 841135451 110567543 386003478 336245628 1180795 585629046 55147652 150488660 492464673 494640673 703830895 59068876 492832343 329219162 868712442 655227422 224000277 410538368 316739854 792243400 693010987 791929355 936796941 749880602 464381281 354951970 752319184 811046731 133136359 66192715 313597499 549828525 677271421 887025389 732727768 678624459 900162243 615106562 187853225 88776332 27767422 598729558 575789492 878880815 945313993 172675286 487907143 378759188 22950816 617468460 15781441 69898624 445272945 397831606 850368290 434633631 81800179 721322222 213571527 600497678 845710482 652601376 725392615 708439608 633402051 678386793 197781117 440911085 465130201 255232019 399889213 745129339 805966545 923675757 639851106 97166296 435499903 228666490 274493898 407164403 245308195 242583616 279503401 492824684 230792424 280652940 83927953 665994654 697921198 669123219 445263046 207047306 662381521 964191434 293598584 637008208 875612707 454086405 69160630 730282885 582524223 926513763 880702509 363069758 684680214 987415826 440283191 810768124 122540585 551125616 94561489 387667246 156097576 605988630 395167095 591093639 390909114 999766886 450830102 276997897 36499011 88748703 550374587 535448110 684902472 254229523 779097771 560817340 160655498 91755471 152250167 687319854 569700975 263568386 641714086 545089343 327290697 848672563 282216112 331475783 159416036 378046861 137099908 803555900 557393558 317877595 207035492 864358456 736841677 83020985 78359623 306910126 741531575 438076416 290688862 566517313 945760879 585958728 277717024 411010804 547601291 790790726 401660306 242920439 596978011 764919379 995980509 861183826 992190824 265694388 891197987 14940480 26134993 819878989 874711304 189221710 222799770 232473838 515916605 879454072 160065664 737941006 685402302 583352994 294536513 145540629 641444213 752148140 38728205 446289265 11646913 16419555 876924331 114702681 167306176 270246191 118298276 109430996 5258514 616869826 36018097 220915299 33285031 295152716 177088396 541508944 32906107 431772546 444587485 807541396 366096091 753472192 144261916 992858572 952292860 462673347 268878268 409531594 667821129 143000549 90175070 480163344 371955714 611714426 271347326 44648964 604043874 688476527 777297719 51103128 791080082 677865624 797334097 528079926 590676243 698334480 623087364 21681772 629996853 575288938 315243872 988078157 82029443 695825926 355542417 811778703 895526762 595411932 584290003 526068849 84934473 772966076 555324445 773993263 154273250 18257058 65687352 183426676 278942531 328936173 811015080 799410411 585115413 984818728 15089760 445706612 741549438 594730380 17932955 489216737 198568868 83922772 206391387 503847195 962795064 617800203 943041723 521786495 2243861 141421056 116821754 963369174 873353144 324838241 414440092 976197456 875741058 657866974 872122258 805877554 798103645 414906986 134460074 312299749 385772069 799810945 744985402 401832396 276572878 957544732 50743622 407681525 876078588 618560066 555770843 880474012 476113515 616319797 278142089 82272219 938726491 4791664 707857848 438708694 618156787 495135653 30277512 985933326 246113270 261872239 508739642 846296499 548235739 428070264 393908203 236565692 167295513 248048570 897355136 583031196 84235740 514814186 705970619 589227230 149067703 246015368 257156331 398549244 784796108 670438652 540751928 534508978 659338488 754457617 54457059 873517633 885001928 378018078 258849912 836174695 986317073 670805224 968880211 121797182 918123100 553821439 998914964 317285045 172893534 423355413 125182254 537944549 952167855 476499276 58429625 435363357 692656623 875938676 67315904 339717531 180476354 700564293 390630586 41957898 813038190 803379830 951920290 351008006 64689824 447770832 422711489 496796054 453891270 27471497 206913842 575421826 624827755 799629707 841593336 345808537 655860249 148391265 201827817 471033885 568713507 288445844 795384558 187860442 971869719 753528902 904773061 468355011 623582773 79832331 879193602 950647290 388864832 791661148 67740117 58178591 567106549 845568933 940659449 523289972 312991144 889839550 840824581 432366344 224437197 449632954 216936240 88368208 61060015 863421383 81064206 354790587 644219957 832088474 533754497 354634950 443403540 692684875 296309696 121221889 871612833 821612881 234918622 756195910 503759392 109074942 40267355 168734209 135325698 708936329 91311488 655491068 950067113 113478568 295614567 112194666 544291501 993707092 92328344 750109671 954921926 679990195 29617864 400147245 459887791 810448019 985809135 206903586 949352722 569262828 93312875 714621492 774646855 964287746 110743438 790639529 262289524 223623473 21521966 220342961 986080262 365422568 83192216 813456861 997662938 222890405 555934514 456929304 443245519 178585971 27987210 206273623 135058383 9140123 606303593 247845999 114204913 736354856 233782632 650358214 69459085 262970435 487982034 625290114 906016189 939873603 435702511 966419764 654119505 883152521 943992669 749607156 810954194 871790058 470234851 293865411 148596649 613889348 324742429 939982540 41944437 208280591 904904270 979329052 664926092 741480027 925718931 198020155 25699035 647397332 709795774 137818872 372823972 141927826 676949511 918456870 639900109 215070344 697823315 756776511 102940001 804061588 614118118 212373389 774359837 351115400 94919315 51175016 512421075 357264635 390591071 365106163 607405826 823378980 951024137 551073694 22372099 226593017 440870471 122547724 505681530 1854064 853612372 432214626 483304210 102557468 564236092 426350931 945814398 206108916 33240704 358096701 106797698 311236618 262030069 263323921 603454779 502580834 704561605 533048417 241481852 563142490 831982823 839402082 503318696 573055504 452206480 264215280 383035827 471923666 788559163 3111323 253129416 685671734 855755628 441168294 961061761 538843238 24511153 141255540 349399791 988062673 666563862 425267566 867834126 497889759 935417833 232892367 1342673 734894063 945551960 367214434 804692870 704691449 300426827 853411041 671237336 150921251 683232205 528436936 612390051 729832947 201650760 146597833 334419433 505383268 234831164 40516036 227806316 999243903 282146817 160435813 856621631 105172210 415797400 137649311 292312338 527359683 343152091 121043383 656465480 879222212 340182887 575608964 103061140 296821758 807146320 428137655 309214978 312614442 581761768 97918974 843990363 843882097 389753156 519184294 117664666 812755335 830193338 316517774 283661448 259585285 228165295 925778358 324586152 588672388 512758270 264825941 840267698 116501279 686419765 493711639 256044741 484461431 42115405 80685719 740980052 311668162 558288203 608974788 533995355 601719538 403734989 526035880 501963449 494027367 993595875 627403917 978591987 914867730 394382528 113896117 915459292 694397745 758374710 719315224 681444077 338674909 545183433 931363957 464827255 191970592 190446817 45518553 501833694 837385777 902530617 885560869 560687338 786193909 322767255 385058298 919800211 46917849 685256418 232990711 696197391 192882357 423536842 804819428 613865138 225135489 297778896 572325116 220938579 838980508 397288575 575243601 488486635 67730283 851213262 729608227 355970069 130553222 186417096 255633117 59698416 684715692 654951943 45486055 477260738 180962584 126995972 307979997 974919981 750392640 430442024 237970912 447548661 657855653 803066569 160550944 415868989 190312395 213075201 465451506 142735320 795171041 33335892 217550888 919119573 449776695 490334310 557147393 311406531 806969988 639940532 740180770 364517644 28271163 766436735 436599379 603818322 882842604 370282930 23705880 328545847 192908142 779324146 69919623 536293067 536252029 817348395 224913207 428882436 873868392 890063084 192202436 170110282 591584339 842855588 544629650 627576250 491899955 569656783 600659605 954306035 352617116 311221555 513648345 246167884 53660886 402757413 437852296 223856099 785060178 770222109 408359964 836635723 872263806 747015468 212192663 686085816 862670489 896563084 919575287 5143710 814766050 666979013 728809956 666007886 51786674 520989713 515280977 916283489 372282235 118025635 368841623 200553162 77067934 304412069 521268158 209414568 81381181 31135723 468348289 829953940 804286485 648494179 245179097 166259879 887802094 848735905 620428085 534394505 990974411 828587507 522498547 666284051 425715631 52653077 205803594 64970069 906500269 535650045 91010922 992730348 25596346 28274834 540109467 986801497 790992616 644992121 131102242 213814715 719373265 485712730 185175024 228654992 275561014 527104762 480370142 732587905 517292660 74878307 486174092 953534732 262312826 802500751 964584638 359180551 439841214 473741585 64400855 868095870 167096357 575188975 888163151 335058658 743716473 98045380 361600659 36831319 730009243 390628630 520779833 604463185 286213537 65720507 484986003 298944743 488937876 774600248 868931515 994409265 62715906 818506801 201188667 114207199 973371618 258619814 328248522 101745059 79451449 690408493 423307768 251582939 650490167 450591145 208682458 643726548 408302326 730057683 101948738 36754591 191874091 676800248 273696780 282100109 409515077 604342584 529057696 996602750 577962563 952406163 120285853 314143214 519096728 162264212 835781808 665838166 758461597 223694011 254967892 274584859 973071749 992467699 994353149 727539581 194576886 662587891 629452828 515230738 293358149 646739835 382900365 310357927 383938989 712926361 350213349 543673807 752734122 189365193 41451468 267734648 570271767 826361545 481685523 271598946 927033168 639807642 807287313 890898612 445172140 115307124 187176860 164315592 131413538 182162525 282049061 59698265 693666509 548262410 552289185 668874448 396818388 268177877 529658041 39354456 462001180 926453969 985093350 469311568 170801494 671777881 543861083 477690666 700859171 960762532 817354464 392845909 51069193 839847097 176452276 128550072 963115031 853664632 908654791 897433387 220593850 191254054 897728977 847914339 647096153 481224199 915140840 500905607 386626374 136246467 665422653 75712331 392172628 238812344 11066086 975507217 843286919 964729262 231870898 320046557 887608598 583877758 79931335 625051870 150242620 822206 259411380 56809081 856326852 69118040 761832782 523253550 672887589 138205805 208791784 521045141 325983086 297754628 986303665 119356255 278457239 382666157 384165740 377434981 503449159 120788871 452683994 450435268 84155921 938247424 473864473 526041437 746917826 874851936 445645264 657440315 711915173 352360690 757465753 951428212 310002073 131543074 592467848 883593446 188310566 624848549 808191445 11918278 140501959 319259319 717162067 351804797 205032445 191500054 881688034 46564342 675797194 463533264 56457550 397869697 182530066 815683456 156778934 838857470 120267925 672905905 967260100 349126390 660734164 56350321 978685664 312986087 639036561 737210065 826938314 208088971 735243185 737607676 389041844 311027053 532948788 796216040 101014919 349317560 519782746 514985046 81798101 2290076 949499170 409767267 250809916 992141535 354343614 73269387 479956990 245946267 998951108 839606276 934181050 450463676 431594638 190396324 84398049 58237196 250537398 877957852 759629964 601705962 877420005 100865055 330039698 398316141 714930673 248533364 395770742 585140675 499067310 597975891 407415692 173041705 180706503 137787395 146554056 278533667 236893870 3330031 612451636 126600961 559539382 684292954 127715369 425821873 358066079 814770140 428277002 418616568 736584127 675433532 889094356 616445041 875496551 111493745 781475174 808539998 884076461 53847815 443997927 423994841 257144261 895529102 814933869 804799431 615240119 878197628 421171897 296756028 343421929 466098679 976875404 583420469 805761320 372918313 253707518 175303968 281365915 736722639 893762297 604484023 899950999 665467 347229924 631537641 32280011 418238118 176307061 557002156 321536835 446316998 483279872 712365858 153376233 58154194 4700101 624907122 61419579 269046266 142486630 897750894 136921986 859058524 817005826 231243035 997884101 40676560 621255356 306770035 482952533 412418181 613970950 917970539 115500967 648718112 975138199 90362773 379261693 84966373 644531084 97497413 631333421 530276540 30243818 547255650 92307007 897168083 319199 337135502 251545644 872476812 549426297 26799544 98799722 436228914 879667449 111288808 716380523 276518256 84529315 557130879 379207522 701265346 371998070 736450397 384149768 376959019 582505477 157175597 300147103 887761478 455285471 408778942 792491661 67456644 156352196 30032776 203809576 667151376 866202566 9064241 85706075 469344655 369752181 838652341 227883625 605754884 273253341 874253859 386646572 321086755 34327755 6207077 42632618 837918509 916669931 708548646 253967759 954054805 463051163 663773071 188285822 290717672 822932332 326296234 516909398 858439121 786128375 895348066 897871537 4962396 814423388 592548363 512871899 301120660 447450461 843435797 607706152 686481477 615679947 871187452 367274563 13858537 65540842 851728886 802428501 514566703 935162486 775856369 640296509 792155300 789086761 377687133 935013216 679923064 365486260 457929124 541371448 954963647 864779646 666821903 695856663 290973640 104658697 973502614 41690412 55202916 683130847 713119845 744980902 983066959 288277128 822527345 935346001 17333071 592576494 902457687 713062905 761920199 164179870 941250785 407445948 719542608 268756216 412756773 529676475 622330886 776902225 89211186 762004570 85332725 848449115 947560568 243747010 83284734 479730195 133296076 745366861 671305295 456422611 265081304 631890625 96968451 768563718 801351183 650282345 572580997 720929065 804053946 156512134 701349886 287868930 597262360 847234770 495186217 86414456 97454751 821794856 495151189 709270109 70011448 540043653 231234566 361455986 928285815 376804627 411199279 450316435 917783592 21584226 674043542 943300683 222217967 202107333 749172501 87664850 885154364 584643544 657968995 55997115 650215693 796285486 946972271 988931212 621072035 19179329 727022783 756327276 460345446 974955667 839397703 105262165 31580350 897022518 122121806 431131874 302737244 215582010 942324865 35543018 656074190 257306912 473997752 849007303 481663682 236798905 638588414 720855038 315374894 263430733 361611353 287594429 465171007 210075215 233234424 623417038 800228993 94562300 354334436 975739833 748032430 770769383 235782561 28178738 51901382 498606007 305229565 996174486 560041222 992706699 308681167 339832390 99416680 543742917 643570138 14792888 800322716 680753833 854600658 308442826 618443948 502138985 890934980 617950688 189487797 92737064 978800286 861905121 775662309 744066162 12971140 294767586 471816581 590152238 221807676 248291718 977761416 163112673 970765607 841621183 61507031 612905242 478745804 639832856 177463956 572681168 771137387 905030797 162159769 473318677 301999823 958875183 255114684 358241038 955092054 624944135 331950332 967099066 810793972 123123055 147479431 295118729 878848014 625120763 299442489 266457912 582071823 531151605 510923674 471080347 854947575 314340955 851631882 238960567 220635683 787055278 723926781 966285799 936524122 877767835 956964436 862424135 305504776 652547637 3336808 801939076 292814485 563302629 906066323 135547491 377780108 871869714 523884625 300532403 441003610 779485776 205016587 389732348 72647023 547283590 421243201 807296680 109733358 660282480 785124000 217529036 70790287 715158418 619437647 50332615 164443011 862195342 866226839 999166853 286710973 594328006 587705974 250892784 78352082 778539507 566126788 378863209 454731376 452731785 548371458 334118351 326568736 214975526 595620862 575302172 275791538 462307786 850554512 67041028 820522530 44453047 91208888 30347811 356050093 554781741 978053468 326237956 344186521 362956926 91599871 832089762 578526378 634746998 744047948 375321873 838965053 176705471 456311710 130320301 415703329 410068425 615640247 333571799 52453471 279096037 737425242 404588731 767694957 512502065 583078292 622025770 485384269 585428662 950761496 94109569 900795878 124910245 14196828 557498476 620970243 937420851 893316337 814762232 565115770 201940961 787745725 463887897 736107031 996880235 933506091 90416164 375414284 722177108 213270583 554141045 954771919 921141535 428480803 304943563 625161099 960840708 91118614 134823048 561771704 68198591 642205256 84093925 940546854 645810951 413080099 555372419 618243520 434954716 905054561 522841906 47398316 630611212 410851392 785960337 321673358 54133212 440303765 670539432 308570372 733996305 407811846 10909657 328687480 263389081 611330070 570977948 346866835 489014466 262709616 439765075 416414389 166637643 746710997 374470393 31329231 466506592 145904476 55627678 720210019 621105134 772160497 828069904 941895685 531072966 912042799 273468634 91390638 43460767 193182597 121933744 354217216 304237096 775619911 563034663 220425622 85954598 450856675 451853047 636230560 224043346 847393867 654925404 835816653 656287587 90433873 159307071 949840153 692717460 304962497 514485684 399119970 149824625 720551720 156936186 811256134 474344091 949248019 696654430 260466306 582286444 970617823 209660034 774793238 822258258 38193860 930235826 290242297 957845478 47868253 863369090 233921807 985737641 106391841 5385765 292390780 289460435 608207302 156727408 69965303 376634233 118827156 159112785 882363452 176727273 242279566 917690537 955047729 864145616 984341177 778688040 930082897 606631846 461827463 829228151 907165311 900776448 900968801 845098195 542282604 940959847 851698225 394075541 635315978 611601172 659271119 329364982 860256131 913005667 436565435 7778151 301902454 321515002 750338160 37345381 681319192 10366080 501988276 910628967 179025743 777227541 752431221 103008176 260106166 969664074 932888933 938718072 702222991 683858253 758622630 703076816 450464576 510212373 206413823 555721999 421392052 465237297 372915572 956231617 379219896 356922446 382199996 426696166 408543827 736121539 824728520 671304192 207557407 792185317 840545142 612419603 218308020 717957490 455157952 11284403 53176429 334233809 668376095 927799395 752091050 308475246 485086450 870117521 278444715 618534863 409913221 805026685 877134574 354565807 241399307 174833428 821798642 156888566 987134538 108701420 493683359 814210438 317114042 514888555 836051376 605896504 642771412 762341271 485224337 64670076 140472875 716826346 828129756 816947043 831658218 339735545 465232614 975233566 593293030 880191745 942468473 591247198 138933033 408699622 92175132 760308524 138507648 588979043 89814882 434947117 41303368 972683995 119363237 782878346 633843303 716312761 209294673 172605647 533111153 792289278 535486708 632677204 816170145 552393766 307075396 648743142 727661349 743564106 257036271 883376589 386096401 991697092 558292068 632750017 178769578 260250292 178253936 179185283 623412508 852783533 705166804 249402202 924475883 170260056 810952642 246720380 78906782 383505248 526897133 908095273 339051782 865546012 857199001 235677562 746240543 695326663 337522775 504419163 561304168 972329427 693622833 558275667 120661331 173083181 707193389 461298370 117233485 675857107 601640647 525522558 643466493 948948387 637930549 743622556 635283178 686513801 779061511 97173587 270023041 727437589 444818309 192925532 30740169 440559553 417620077 433927426 647697139 503108271 32143832 725268667 800947763 341824141 454803416 892158947 298103657 215441003 752667678 499576148 734607260 495401451 355593540 781439806 989725092 887511343 878668465 276880109 395443568 7138284 579120358 65351159 582513610 167733143 92573405 151935505 569370356 157170095 798466483 28066865 181986889 951251049 561367669 285783685 691635654 39762900 752795326 950993058 574648192 183214482 325910582 649976465 535734220 464769325 464224365 677639681 658941840 743984651 115829982 705353578 906261436 800252782 957569416 265505563 621141230 740015237 267298418 420867534 448803377 824733838 203022315 13650222 279306512 720269709 317823587 359285977 554391440 282445014 919287997 454558782 722091449 815654578 723070159 496512391 384611353 889333924 490132649 846980435 170609486 613735268 528287172 120042517 78489911 104256120 687381637 64069452 49545336 365683137 48976097 813129209 112775639 793872864 166120323 911828240 958622324 82538660 908634631 53860028 54783160 864025805 51630669 146025865 795225838 564166873 24856681 304324892 37551007 666381749 305986802 330815152 331725848 715333754 199286348 131940134 702528759 361039015 933954060 967872752 19946371 370436588 106724123 814718357 392846318 817062359 301229133 215788077 289614604 138740004 534820672 83754131 792414093 289450066 265782153 845960543 882821426 636551415 988155868 366464772 969668996 660733300 369494230 282626568 24352067 369517583 547431212 891256687 527503690 703678462 710496688 886459436 161707001 373022268 823480908 292842498 214635840 827181639 784858915 573483109 598280933 412303453 604381877 577863643 766613543 311014962 717509646 974785563 815280478 970257476 684085573 633866750 757317634 930064302 315834405 138066104 673096094 453410980 949836340 190638641 1668042 731517568 927675701 297202248 562697513 253115745 401720813 883432486 315849003 711635432 724097802 724442900 487637097 288787292 98216122 384688771 93104380 454459153 528057961 311363677 568283726 617965219 162599164 435402290 211118992 897775415 289380208 652265551 616182738 84773249 154473819 750353824 576577525 964025060 33614123 259951528 736402378 407316284 574083894 882071804 34643737 648515125 738459206 353392499 525341482 743579441 277007227 978929810 297691290 227128087 798691617 682995449 998292378 331867440 422302305 638642427 86164884 221792042 641317068 246954722 511882993 341755751 451104819 473643331 926032156 71159392 596565273 856441674 957024120 371104894 481793277 627193426 764452190 705251187 759237323 956017024 745879597 78585088 364243016 781910443 457668800 199888550 301318796 309520105 237764300 417274640 881583265 839840128 541631927 790059587 882588773 266267316 132745402 204077825 961012465 967252246 464886296 138076761 644449987 846211345 54548385 229249511 994243125 967826841 133696292 310556677 199720328 476345093 313094833 814101905 9312358 951582096 347573145 930713657 365848090 675010359 302819885 342566589 987642369 598951565 566763171 78426995 420845026 288397775 649588790 636358206 343398490 373510057 88795175 312528089 134944904 4942674 669925878 978601317 781646761 660252470 72878112 827474613 378082593 560181314 498291856 624518952 747228211 982671679 402450714 214140185 643369634 551723345 111572990 102737947 705856063 253090065 86365059 830289452 358119341 601312285 393280518 168679316 658705601 15902079 301159598 868449781 885564920 435819546 107848729 297190947 223801896 275594567 299914389 963066476 545221766 677550906 651349416 317614997 331662149 911791841 481324446 112773406 5184673 845206214 772175395 485162405 139151758 103718668 395210955 831624236 491796533 105800005 101959872 448081405 363740054 953563344 80128197 295604494 120394936 998611441 202126213 699766173 538746255 207497879 692140972 542101208 263165061 570345295 161990230 256577235 33123002 61582170 685873808 231712030 222542119 469277409 153381332 465715795 621028219 847236803 21539569 904679501 510913898 534100894 144740800 229839264 621728246 108611032 587008246 607717878 58016186 583764266 848110313 956841270 267147632 86310800 265157198 114454535 938931681 336183228 371099903 863739945 56437748 725649244 101051919 118941813 665812640 317850846 405936653 556739191 410934950 61748971 270917935 332804752 410478575 245958900 813632912 586486382 215941585 722831485 548528304 295692505 496921770 720072626 453835763 586852257 730545524 175536724 736711746 404185054 10384944 464961471 800724935 604357286 828957892 153887856 63591110 989805619 857803982 206599899 108054844 34097405 831941966 332988680 152163054 26750208 800597273 712189185 904418796 547884423 551999852 80636038 878306327 566178976 437531268 753242452 881939654 571222512 703588689 871524956 788940906 722897754 303033095 340840266 53512247 946349110 577563260 424934289 550343939 632512344 963528338 768473307 752550153 785178851 243293741 774841404 690090604 847459323 635327095 828743357 33563767 335576212 964542314 532638892 44340418 519195347 364933160 885567710 423583041 559011226 495947696 189942890 619301782 272208990 356651497 420186910 177072746 668816683 625773930 721046763 435443551 172053009 598455372 963376501 988109333 473472232 248148377 885216868 825076374 683517616 443236891 302762972 31441120 741613569 716843967 282571591 463438182 599073732 909191515 594470005 789077441 266642775 109962817 19513997 85834714 853331029 473775219 84311213 572239224 736795609 415090988 436534078 742957135 54247445 819901347 28411100 41111849 438810602 904312505 881899615 240186023 169578784 761595656 859193987 12147655 607883316 850793085 992861267 352484075 585456779 157335373 47484822 285205006 266784339 302940053 678236087 414634973 917827066 173904015 970029572 62911061 43241505 720187595 530364057 711021577 452759816 276651813 806082844 785204398 477692496 563702880 159013660 814138969 703298705 950615083 924124478 685879152 587014222 630194412 835656811 784875510 380620127 603626965 541382047 126004379 746545703 268833692 645153117 408708221 915851685 626662104 340450414 92871678 797615898 659676577 894034747 446355580 166428176 20284500 970845375 556701356 534556021 412291190 533521849 743315077 601218568 587144013 490736780 284696570 847437705 404568437 872791633 407260609 435205889 401004716 75625931 474716761 632440147 996974170 428560099 417744808 545878962 131307725 925566031 950698821 504302502 510752223 556578984 390978444 520855532 841572951 456263459 371443140 707741158 131139954 366917547 748279711 623876737 600051298 871322932 208984590 31449104 616865899 21556183 817907336 410727965 517093311 938905087 719247430 561793803 975491472 620140936 562988781 788222369 761518567 311610629 142560666 761487685 838536877 200746979 552967944 256524554 85365281 921707408 731759873 353890988 930874429 163305956 286725045 19732319 862935735 392249083 642769495 385264626 529192228 77379068 979518659 529619639 589211248 512501162 134371215 43958892 393154654 464263395 138544182 122179138 541281289 817509943 769281181 558887163 721264981 773177677 56793960 817598822 735183248 702153804 139437248 43888190 309398634 131280483 870327393 838385971 834406891 858036399 165447072 866750260 633299856 562890357 404171601 62182134 373349468 343095309 469296310 400443046 97893330 98008403 125154868 617524550 135717987 715948592 149950646 378356261 541960911 175834506 394993137 987820629 345276337 22568831 695838527 426858463 779933507 524688261 319614085 327636471 362356788 407531918 707796555 160515045 602232267 729962883 738560164 995542416 116843403 323326923 948430690 757644178 240167804 201876797 489648101 137509684 251977555 403780342 822772536 840228990 230381362 946449148 299518060 801093869 427559138 453429693 421035577 457442841 133213158 737428513 918604019 993292255 613179871 707178494 634219429 279954390 40209707 32642652 427737574 984618559 628081888 152103062 154682867 737816109 311429385 569853209 561423531 918398231 175792934 265747619 633247557 120871948 995338418 320525706 485321944 602665368 708304444 165484616 664983692 618283908 786921416 158956124 138644799 654624562 219815358 892367833 346511905 362768721 59491915 998944288 17145615 989303678 594270587 418989035 459438323 179797467 691507537 906124580 426679554 847436211 476230754 941025656 324981210 949850823 347826963 646368444 705471833 255516977 836938997 762055537 209450907 598020918 753302057 442289799 824582246 962584870 662400708 816307621 577450997 661056548 260284896 458021669 475889908 471825339 408149841 958696946 437142526 799867772 187785935 488984751 158240826 337945856 187933723 615557719 860665211 192569198 362551928 687341196 210173070 773651934 297807763 414765982 718115009 865355429 737187713 837494070 110647773 325067203 340078638 595287423 655442378 56114917 121791851 222754214 171085077 703687538 78448259 364109723 796814852 782363568 588267523 440288591 408463513 981171778 842687035 452015542 864114779 288203522 702297643 603352651 87100851 230294885 710918884 357208136 103640112 503117479 324409722 260485766 6684169 451647224 581149241 787106377 30346537 214430403 911417342 517654622 758232531 746912170 531283703 506499147 595957954 845322597 633850379 157594567 468873084 358990038 973264959 492072934 972216909 891844153 984061250 959244600 952537366 302490572 807157291 936140801 321793319 618536949 989141030 411948691 168299624 279456654 869699760 549874629 143335548 966810890 451427361 330443645 355009496 868107369 61432201 558205055 847317676 911225281 937844080 46129561 276723985 23122593 713857175 864727137 625174180 829711194 112469039 409321426 587082645 154416315 361008673 183083411 643376465 3984175 614440900 644704857 938249977 664994878 881244359 307963828 11830282 781488850 926823541 720983813 834766356 810387357 379475807 389772750 251449710 349311427 399478070 573171346 175380275 56936746 228806640 674386442 15864778 200428892 184452922 726541906 922096077 450583347 671131432 214007197 462012712 515163716 666569292 652231106 641206688 217126903 691166336 318784618 247268840 424273745 716201925 341699762 7397401 910599755 93903346 412990766 190564185 869900758 123837782 419297950 276940055 254222301 659919270 243033558 117268426 864148827 977190221 726145663 276254261 142612285 172742012 485643681 408626336 408224539 46734000 100430292 854285721 154504154 667757686 657068905 981132983 884863343 730293593 668334785 493661021 669642282 632614293 288508806 793581979 183765919 534021615 495808275 101683580 414451105 482715532 769999476 477959472 131481453 456146983 197346162 113749720 145743369 164050158 108435814 863766192 911272573 177010460 13690850 80882672 737510289 495496545 249915069 993371732 286646694 341860946 751491359 750825900 166815489 894857796 659405917 240018328 857066353 341478673 960077354 3016341 540782698 475175508 273200198 124169143 592986848 209077098 805610838 157764591 874128190 384261190 763296286 390426764 273808702 865316659 649487068 619776852 468416485 136196568 557649750 413149843 402823167 319775658 687478494 134281481 879475036 851150927 605098410 827475063 120760656 784369999 533498498 712562693 288786409 461256179 116037566 146600560 640594653 614432942 504675621 19231839 56267614 166826476 545265366 957944086 975492252 601456898 742247713 419097099 949971147 900802937 749033470 760167797 115461863 163817363 433777529 776761624 647967172 308977652 190207607 227025308 723017906 427888887 745344726 337361029 909832703 650981517 795270251 32065882 813917576 738024943 136535245 460769786 921431002 650372582 667602126 72172463 452815084 68355211 886125941 253456299 180541817 248933758 76808296 571237213 387470379 319033922 600006518 568532116 431846724 209416918 742881057 265200858 246622918 823028951 317812340 161745573 785294922 306909072 50073755 767331258 203146288 805234755 279737030 586441894 150791170 882963804 893288937 780771427 492742093 252216581 867273944 97511369 582279803 901409638 108192564 187156602 58827317 625905420 849001252 607939499 821229139 908470982 846685638 940922625 57135056 6348051 454103210 596336000 153519454 132218082 674476396 751821012 912365893 706731756 624121320 388364187 229663755 732003610 8117987 58118232 929280474 167535993 556960439 695752081 481121251 986039966 448981825 127776532 655358467 450644049 75104734 883630448 391451532 586904555 381400336 296049292 610095169 518838902 794829727 823680843 973551986 994141837 49266652 547125409 320236515 208510371 581536678 790873608 546536242 552297930 919255467 552321298 726774715 733793698 60860829 28854909 335341996 463694412 713926324 305683069 138829102 196054264 728898655 608805051 644499318 207727906 477665104 69964124 3175375 754111900 874952161 999080238 894723033 238366942 651111533 366282748 699373664 561884986 297293404 272535794 376960078 396854856 436719662 593409514 465461422 608785435 432820015 371069428 155428988 973860468 379172011 561999601 520378378 156995171 418645490 902621331 712655149 655047496 757525676 246850692 654057409 103591946 515123922 869741877 13873836 998742067 347616916 690861779 112438723 749339487 646314764 575273242 209030069 510918618 235343266 278153192 114324448 515486998 133928188 723797232 644355122 782333598 323857666 772286984 842429936 346564397 602693600 949150427 192834695 867728775 177479723 191993413 652051818 311761165 258662560 260411278 420657334 742022052 146013918 366593260 370836848 18039468 767265921 435278497 555347416 89867621 557423202 929143906 249366147 323959770 735601495 614328268 901501344 788455204 579574902 334184518 999415842 822599849 141061845 607260898 816290510 105822142 452243766 725025989 188749923 418149697 447253699 198558338 661365613 300626759 154343589 560936774 975561733 536963920 747361196 319556261 917250716 285923699 235727127 890292615 60331555 210814516 289073729 654097788 904103878 976978178 408045642 772678644 117856290 443803951 203007230 483431417 494389845 923048430 189952382 753494515 571728392 593697034 689261165 249760061 829892015 933280112 184732481 902792899 791459144 195669100 208123234 519888063 195948801 987731394 265819830 245606958 297231332 427769264 365700369 238934437 778969028 350203686 543395415 858147614 346883778 269785249 497247022 891024912 775475167 589950411 485719605 88196927 743097790 727535464 231841985 709414398 639121178 944609149 378476033 50786095 300166085 847633239 172023297 580602822 769896826 569722553 273831792 369041170 662623621 250110358 36806869 153384224 620751581 879075173 357472561 175114501 219840114 229321788 732590665 632866965 457907025 699254097 979160606 371813823 208019051 209019037 658135569 261727456 231142093 304538122 462164969 934219680 227728033 538173305 955290917 828255360 938822150 969460477 963495406 407267191 712150575 221969776 711396834 955918539 99420189 337798246 833356788 126396779 521711746 214169652 585025559 360440581 976163861 210262919 53109080 258458456 232225245 988841343 617808624 854973190 518650864 914782616 354285715 305334208 294724295 574095543 918488305 350390329 937719498 293550556 120666378 838491528 181729499 693155483 832343316 658314111 780167085 87898820 86975279 163908823 574313777 973466541 530211097 513194258 39870819 280177669 284150327 375895210 847641850 758277606 346606235 711733430 303078304 841497525 969100699 581375628 250996820 411860248 256461079 618133751 667971002 943095556 336579981 3670872 685804920 567496046 61667495 948289571 401592153 106345011 250660035 603056056 475330632 86204362 295442598 3879495 767068650 346376918 649521744 917135454 421988311 544330993 78251152 303176482 718764777 292286610 821679490 407973184 869759021 871149680 849351357 131648197 185459242 432624982 618542720 937713405 22963089 314693957 189434699 367471634 503929965 151519657 468944342 315290554 386201943 186100837 145355062 707111751 987601834 767806257 251345874 920457182 631212081 244067968 818797407 429581410 153865276 973834185 193611467 141342995 395781125 517400495 152182402 979610065 503622222 988060181 713608110 202901494 905513650 891907213 988097504 760474315 312952923 322333857 49905952 764406727 115145376 257727341 871943577 810035606 420148288 585179509 810592103 153549383 360844181 402267542 478574505 339071943 334439146 133796429 116885686 241932519 23938656 69810737 858352481 719703268 447521772 818327260 954411073 762195402 67246051 498174805 38133955 328588761 674342505 189743954 924951801 395733927 116215291 445873493 238515404 982199566 726991811 813460378 885439921 278629243 493798732 355425374 109797267 166434404 762292525 641557009 818004989 668672102 631900379 24074765 225523198 722035065 568381522 271215318 270640678 970830279 841168078 278561054 623490709 626441532 243538790 61798471 599958848 875465653 302331986 785373615 40489918 658780487 116258267 469552975 963984475 253215904 521266383 532368908 355599388 944979681 857446047 549858509 450197814 305097038 951440304 314636242 657088405 706844019 606857709 144940905 29525900 514735480 379462163 957455546 417462637 81357175 685961995 95339418 147688699 28926793 889725063 891970646 271385320 305490748 924123381 733257104 997138730 264950794 810244896 349806560 345381353 837838498 631756310 597768119 889778707 199878175 590455647 122975777 782623795 640272945 634945362 640029304 588167389 212217290 721035972 904616278 445590407 599274987 810764955 522583588 307180148 188057483 20233382 740277057 588985152 945484655 556841214 788083369 539141537 286489158 574114037 647418848 722766499 947255930 522791565 256130980 999786903 786504872 320765865 711357184 871705053 99080947 340355792 624428572 5841563 467712098 462400069 674690017 932311415 599354028 550365077 45638583 226919039 158996110 59079733 45051075 46196873 884661568 45434624 541732495 869851077 513815556 545573783 881439628 733292048 794519132 678013837 614432687 810233957 873100967 852051170 698215021 590286116 320131710 446687620 704087223 200503330 972726186 667870807 6243885 37263616 527956209 135389444 753771207 825340289 331867342 826747318 800067046 235243123 991639306 983977442 300905087 107223833 592071260 3465462 959394226 711192359 928807247 966983995 854919759 195794074 373790065 817261628 267335611 973591720 146135134 285405838 227419953 388392359 361319296 762901089 167642330 633477484 859069519 837329425 959356562 363024057 565085430 120835708 133378967 114535542 614850828 914308867 235542248 985515764 88644112 690472280 421090285 655987682 306053178 29138768 615738654 883952327 986175479 327549035 715668475 34536726 855634993 308628998 320639668 971896157 536447222 469566347 82398107 780285326 68131142 538585122 383449257 49050154 209697267 569131876 212669609 651830111 414646839 646440142 768441964 181056309 706342017 140200066 854412487 106051467 692935843 626888469 772198538 859414221 136340345 454023140 133747726 572116161 429701763 932116490 647860179 723211984 877785414 588551457 133233326 806848792 422191691 135145239 203252736 490004636 721009167 624235156 838285858 489070747 927692974 954661837 672691511 384606118 569131564 795850422 466209106 902051007 638077446 24503263 121577389 447388279 411610343 844319921 941456446 412703361 948038773 579025275 657014331 601616045 880423846 247400067 595057766 92110295 188342131 236533131 684765662 75143658 856065983 145336646 575371824 739162890 263684696 577945960 639198751 849553249 376812353 375856679 598279196 892479802 355651206 833329364 1873634 793813745 413801946 746308039 822275697 15025904 374626663 654890719 280141360 903520546 209809460 368552242 426333447 688429539 248011903 698076519 962278672 737529269 791612404 975937815 694220666 342780688 514444453 556274298 926583756 40453149 286240746 371730159 59784816 224895193 365400986 884782417 196232771 399431531 363429263 703998568 677150533 721949782 495607837 525039586 500986395 851621040 168495305 932865450 538713848 136260561 22875571 550766136 546204026 615276351 941195369 876467560 374134046 103445052 571722975 954740289 982459407 446633668 182148200 883233557 220582596 495258408 407152415 217641658 949382483 341746021 28427043 51589805 184273238 977053033 523870589 567248068 842586152 635205261 627675246 286568188 573724130 942670201 630447367 383385393 925696571 51431726 950070368 867094613 540990925 892175238 122142880 668947678 390890349 248283303 814341367 498155735 712992260 800517629 109147379 641573694 960477888 334552535 488550930 690006854 139566798 707093393 641852536 750816807 31945768 708919152 646787259 855236372 347652085 911614393 422258117 784737049 518530836 649765046 219279555 385111587 793645089 155310710 371384769 637669579 645743920 479305291 216444609 744072380 436871052 92469412 209464316 111713289 715194892 158614570 357725376 643023863 235205551 394763685 823962469 594222709 344273801 525224505 192063947 856461614 172522007 749215435 970957184 517094942 137694251 291320517 977256534 641144054 834415164 18727183 431155287 380668808 881851179 64999325 880680564 738949765 152294917 162700672 476024410 199784283 317841781 60019239 651056234 782710007 251777992 359840084 804119525 737118128 647153277 545801795 461509304 151161932 709263861 948957103 592291115 630048891 75446681 825060105 858216846 914168794 344936905 945349474 503353441 118380216 613486807 680082225 419449584 780417511 807486914 155101427 564937223 639919840 893125641 87148273 988103721 195502352 807415313 185949760 571986986 849556388 83825154 280745309 58388081 932105162 685303635 914504734 237117115 838533532 264786546 405837970 240102044 842087125 896706145 661186960 641484691 293685518 351709012 397931965 153672157 75176234 504725963 291381263 973054668 760464099 853267669 742283954 927129443 388138879 345608632 702239849 569793707 745424883 465740138 664154963 708508978 130789770 847288421 32822940 623986557 762664840 222803288 647942316 645998070 944242242 991239660 72668726 111615174 564655570 223033472 940763899 610415448 946462239 284200690 894025597 693958581 655186709 431796009 829265019 301723837 705745193 614733641 271616417 663789571 483513314 92305880 681849793 893074018 96750457 556085883 476931903 211043139 321679214 676003931 425279335 418173641 981389330 274290828 425729192 416636284 352474130 155282575 490605068 200830642 874026852 553739413 899025309 236521633 196056185 713959531 446737882 604784630 372574439 856660054 352696567 905919584 471224432 461300791 764439335 609105215 12538077 30728697 218185847 237752686 853788605 513582308 891320312 226468849 797775706 171791823 861485538 406480418 96161001 813015910 438169518 688803499 660465702 931909677 743539214 982655240 417954762 577637817 288245407 106634994 764872058 207887787 845510551 99158605 312570979 394350821 57354023 965804145 447176446 455695254 664516259 382837939 949714263 28230565 840845232 49869730 959405600 927684751 592101718 765282406 888051750 357252123 310337213 440872896 15495117 85379155 976890951 27465438 359060359 676425483 443391247 43096713 800456165 959644635 774204169 362214933 519188313 236962704 163808374 354195525 389118906 511591518 617600895 659247037 34696354 549876709 543505040 229707515 457009514 233015026 988709473 64781262 845528519 682261886 400532455 513039711 71281840 141151571 315017869 213277967 515153661 201595708 861885734 676971365 595957102 979601038 780242109 860100671 352893035 658868121 236058906 898583584 237730070 765457931 333289153 997284420 668489934 539965738 97057715 453070247 653210241 823306849 562332572 143284303 686387431 656630808 598032395 932539421 878699812 478955708 441889711 548238184 14266054 398906983 289777243 948737440 686497338 667968678 828455881 660537592 485734896 668807326 819121051 588331132 921861801 339039971 24654296 444424479 850874312 137653290 142429399 341470656 37893370 341060689 787697472 155986349 889827073 844765726 285945910 681586045 122215746 35408810 732974794 216109659 442899489 957441068 172929464 427454064 495811402 190054647 607652288 867778392 554327523 385726643 858228079 677440887 798634737 744483434 970011736 334076663 821289870 687330737 296783999 176232900 542808401 672007367 666741665 107998373 738311555 804287411 681012888 299553484 871758031 917215760 250760461 147493551 199749717 479600077 873052615 952201385 163764681 340850760 401832054 283415558 403018722 824950847 435597884 356371878 650205211 426820723 657149896 125698262 582017907 478373012 922574972 819817973 430888936 756666663 128595708 786301895 200372754 364787969 758729410 584845623 722757670 58750294 246090501 975157418 544053469 552594798 825525765 361055162 378803321 52464029 663005815 300306025 835334165 607964542 368319432 561175453 545778316 629192128 250113284 350277393 628542245 421329512 337953494 791263220 887094988 777386816 603861192 267796800 672801749 363168491 23031218 117090404 538243895 793094038 224851739 374483506 198625147 507274566 800912452 262376041 395382906 797387968 249281616 953114467 684899232 659856254 970661714 212677164 342515844 676391971 421661390 661615703 523956806 800984718 187134634 971395263 583112152 821170682 172402653 287174690 982771391 730175286 234974663 379113758 869257929 847656455 117452859 788086659 655856477 498988735 32589039 163718081 154296511 360601702 46220345 168116440 233487982 276918511 854766030 485609399 180450954 272362734 241558752 485603643 22341994 924513078 728318515 163091579 580604175 41875383 987110499 312971617 718142861 720889932 621855126 584141772 33894881 811699381 109891531 852717340 969878219 866871698 924310227 601804024 283899239 449598272 295038297 961882938 702338025 969948255 74760525 894677417 306246965 733038092 579414449 566758372 879870103 805451185 483923395 539071992 126370845 183604133 766484560 448992512 756111329 853367467 789730051 346030415 44061037 478031540 442962334 819556496 72488538 657206374 992767673 753910640 423875707 623973338 961066144 678613847 965957778 493074224 347092763 77167548 843796799 480942130 159160068 899443757 721056638 802547528 820062076 376579980 878778727 922908526 167627429 125049553 421588566 655051960 367280894 760541825 555498033 156878025 526398208 608124125 984883454 49176927 733102373 846221632 123085148 533240646 792416597 261917927 71586029 551559198 482136105 32447603 509787379 727789218 325084586 985423604 653739226 913065836 71614040 224983330 692500883 455038261 311884362 257153800 519029816 692498350 938614798 889146276 236964597 836137284 197015570 280801884 909458986 570985494 475192967 123239530 873758604 795971187 759020741 99810443 433993151 245967047 155255127 805562658 348463887 100152100 683095578 6018182 607098847 831365617 607952272 602302334 470065851 454068750 23630782 905108574 182484479 918940754 680033023 380554142 829322559 343543541 892109976 747413308 492785215 236308878 242130639 252875250 650240086 921199081 900549606 46397686 347399226 254698084 918690710 831889220 780645984 230020519 996821045 309790947 68931804 910529644 414122545 497003971 509923005 617008007 41989834 800957986 797462304 127799794 801425785 533589975 480142578 822306724 882672333 880624272 535360879 719674991 353465587 423628799 394748789 854964857 979198194 391557299 247540319 6447602 599235804 628652227 791875195 569528051 250423157 646662049 525715436 590569312 525492653 209206285 211212051 524980993 273696542 42301796 699950514 709696050 740073329 631518425 678172860 522943468 829767994 925701092 474844801 188974212 94901407 835181889 317915891 343041221 632825037 430834402 886977811 665784454 99224464 791785858 768406881 773992223 265706128 694171879 772486626 91546797 869251070 256234375 485301344 454243188 799329831 44182362 744303214 593822098 952062331 484255408 326655686 888879213 962750094 514234389 620620637 507419651 570464429 853620837 629507915 7977119 308003242 648419548 626126841 185330975 272557966 773119529 471571821 991738951 986123211 850475176 594026837 883495979 335442041 375441543 215845179 533889809 108672180 785334587 663094637 620591758 417617148 54608623 127660939 573504728 48644091 68999611 453045970 210503343 938339486 903354648 608539832 537589066 413621524 159316110 101546287 362740120 289136879 963846907 20868991 942653935 989734264 470272847 527384263 368115199 940918027 402778323 400452432 749263862 347656385 450649594 785825212 467019272 794484039 632532560 651559976 624852606 87618199 153187571 23129992 69578840 714874517 422528066 74564925 429669938 596094668 563100880 202462827 256912028 926338156 952512013 693593069 172966051 416054401 565334412 426185008 164499121 960002283 466974461 259770146 370253051 629952896 422291496 415645503 320629236 15963920 186394328 116850281 666334414 843820938 642614898 271595651 948922837 639816355 326525054 919326687 678994648 383426090 462381589 210556148 47114494 981317464 408350773 322142940 383849355 477521881 864056139 916830824 446343213 884332184 633759983 885815806 453441645 875338357 618041708 482575074 968509221 550140858 833227416 910791834 605288802 296167996 422751745 412826817 153337804 610566596 889404088 275938801 243809720 143728432 231892651 382364002 180866126 750344281 893008672 235528159 167966663 496630141 264489415 420921601 821081112 556542173 592468004 787981731 3147450 452705526 794395515 192246393 639908739 647845630 195278715 302090742 423394516 504878551 156741912 14889614 261500820 510052845 693712295 960677192 285091932 655396732 987883158 973314944 403564631 24383969 898693733 101359803 965939798 479151239 14244563 462305073 588951444 289222075 799525708 475772195 649777938 802837630 704699302 165034089 545083088 191117358 319117988 207239049 124948020 48301777 838416070 195116828 253782887 238024768 166271493 154096797 66234954 591460565 183129454 390153206 71725233 139331895 709881991 661089979 601794861 552797915 571340554 769610540 743207629 446184707 229918374 44194995 834550765 224011556 223363071 778667780 910693979 26970648 182961748 331472141 132591174 462368947 784970498 178200091 25699004 130926291 753566558 817583646 477982864 362701469 810443802 6709007 405030454 893787730 477265976 674249036 594938032 909223716 788107829 892172662 147462092 469599803 755694856 135414527 895879049 789817976 948777702 64979479 679073380 262626399 809506230 309356249 743808484 837801352 647598077 151993561 401845217 601475655 791136422 422493198 721845007 559594138 473207467 122723074 959176699 104904139 413465098 684678639 186900165 756907577 176208639 121197753 748218827 439584124 946107309 55051922 34962863 350861397 468040762 514894423 905218166 264039823 291826350 480802262 498429378 60380205 366089626 546238842 894050769 221224509 955035875 35836837 252360147 774100923 540591423 851253657 930879541 70173924 554637556 327527159 926540962 378220582 934347895 496857283 228867195 920462071 587896215 88943554 686628258 318532124 66087950 155567331 20626548 825587886 883232605 366525898 305852308 272409132 416609751 646159130 961459393 953925507 829077669 218305746 881070763 220864565 696532207 759483377 322960534 570913223 678461898 142653282 275412712 523016655 312697682 865203048 136627238 983301228 30858152 691353754 661770591 987151917 836918106 570711569 879663790 509375473 489596170 262441654 729736815 69006251 81851226 114095943 885707648 256452123 284303085 469676357 492183504 133663550 248224997 347269627 947982483 789219900 580631310 72591382 158108754 126563545 472792519 158142040 487083525 685885217 600836745 660526511 209352905 236806696 521705681 17281819 525979738 592442060 689889422 20410345 374904148 388142288 614904930 844827355 409425767 900070603 376826833 118487998 476348104 158470583 829947082 776678527 813587124 658856728 782506421 48410460 508513511 834551092 495232341 709679220 400509146 606516345 884218746 149332361 622149107 474786431 3044766 258913569 160397831 932439133 826016909 143797099 833348099 829808824 766284379 128360917 157980481 133405442 710784894 77763329 276143206 103923823 926896806 702988839 13190584 223205416 17927205 712487091 562350476 444795801 494844982 928448195 834224869 809619937 349694518 378779606 962719092 739631318 472864147 908427111 462028646 217425625 227665711 662343873 978516513 871902053 782283709 16000365 758345835 876997291 932825067 583087939 604506623 613383805 538602660 458725759 446851701 873390772 86434166 997558568 766905491 577883035 926959781 109122927 326506662 214439116 693610007 714532594 11677163 508768384 945691014 117642369 184719939 938757306 335849563 211517979 454034001 206917805 446365393 402897926 145256115 254489243 756650067 704635143 981415073 704921929 269213650 451998415 333098869 847475755 399937554 318137059 980059505 157948567 384327730 168983116 609868863 216690052 475145831 369276206 545270320 323904661 997074708 607108567 887134702 756764495 17828100 824686269 589666679 551948391 482663972 508507239 535246801 812672464 915300646 89628664 29843795 924138874 488531576 437416376 647725581 183242525 999836852 374419911 876636845 639919890 469731574 359678949 382267947 978582402 756312220 627106199 922538303 98930751 569466335 927628798 577686455 992208660 724879158 817873007 350921055 959278023 188652671 45440658 637542751 90724320 563424028 644577041 378268187 737600006 96559287 289704591 312925306 628324697 6037732 96481601 987580365 30459497 365272180 941327033 555573897 89603713 672790735 657281979 513044216 365035110 744480252 597645449 24319384 562517460 132590591 22289643 221193775 27298632 783753634 713950276 28098009 326524269 655093822 549190492 792331013 481059042 393464627 267431259 626597126 160998853 108258819 270918968 179782073 39763977 779523861 81819247 480436376 862041902 532646466 941506156 147006561 90541299 996629790 892634947 976880267 289297439 798045498 311092210 234378577 945433482 541647116 705102675 918612594 460105202 853874377 796189941 630157298 217761336 692010683 83033659 461305274 886603304 590852210 968620340 256132476 539217705 147389180 765511358 476447387 670128575 247087075 21742104 563308335 645722452 729957571 923312505 50426982 743804818 828682360 624154477 698595942 363090235 673233224 636705747 314441062 650121310 307375260 99633966 271888546 342926559 585680556 65725700 212595601 181864712 880216322 626824146 238606815 956810508 567285387 787560834 96367170 257291867 937390969 707453580 378585805 648060525 158657995 337814141 800572711 623608168 18796418 741331873 377527081 949902505 320157543 571955508 296088227 98011283 233707977 986898536 560594170 208730264 297575370 720058498 238130151 456504301 230818632 388173492 4829296 730774864 87341570 594250523 167143692 675032700 931131329 817185265 36965139 583682642 342664634 236039936 890712338 211700869 529509393 135928914 999934938 203637642 316929129 172162806 451486687 674978743 166989388 774626585 828002263 549496159 395061863 487631791 221692505 468919310 102496878 116037901 530898273 813035636 76527435 206058582 731780865 401284081 578529277 675027875 772758415 439855654 76899403 787042438 504749063 261229264 979946348 402889728 699486913 350827125 452124612 698373821 19227029 294631518 465194023 809642238 541836427 826821640 572729442 405024033 179148547 706687786 554475349 982257922 287467653 597201215 637706999 672066434 261019479 898354898 210435269 761980708 196205075 845030578 677394145 845620762 1462235 549428343 185988140 782639014 688531282 389878206 849089202 631972564 830127295 33762961 879394729 897015870 183664306 49451597 18993041 741725264 249926703 779136004 52329014 661215909 825759596 187807367 357816772 799478591 772922438 795006860 448974560 251936141 510564835 321744317 767677438 144628053 618025755 575245997 452583285 9672287 87877428 319315458 985370832 609719269 126299617 415963390 526662291 945607562 941154646 940128660 204851425 659295000 725403606 438737349 952834848 981793970 275331966 727313892 500945299 344205184 846203271 275218462 226793601 32992946 129585886 253957106 993009825 233959805 501302642 898998960 79817492 962270361 654229664 589083996 711577770 506336033 895840723 998140360 457939645 381510884 294228167 995271478 181345677 970650307 278298322 154078329 559461764 127478542 757161840 332445547 268029864 360678071 356075083 22038770 941910469 394765363 430267517 932749816 872291153 818710780 232064203 360193038 115503489 870592247 216371209 273346216 75264616 694001975 4029063 679665263 714216818 473522909 961555794 301829665 550685927 469532296 434855309 194894318 776808399 96755269 459894902 29140242 309992431 802633867 428005706 6078461 196757764 514827254 363768430 96687271 926666151 345880133 804345504 324319787 684670454 447602114 323607500 513681578 60758723 716236260 354046040 557761540 238569369 678594506 967120393 102440961 110830242 17436655 726405292 502436561 219525519 49781883 253127783 278638763 369423894 365776659 515304450 758006708 482120789 381164781 611846345 404077677 784837270 655671826 7899092 186298527 988031125 327016662 197617420 817978776 558203223 415218950 878550091 243837460 397698658 562640187 926054508 469055040 366914435 931119283 735903250 162640565 230421599 761537863 473596245 208979810 500826224 620933585 937257560 629796120 961268233 6062655 340967798 895199875 300845329 201427747 461114407 691803792 877961058 357831805 76801296 19527822 790765961 869097899 201319726 858708718 872625362 589771958 108807929 390607024 835040913 796283267 906374970 991490567 869733903 7166292 186004054 568431590 993024774 195657863 434625713 120185312 700033813 807219913 774325604 971358176 80119225 445339356 220613005 557313646 691786387 690995662 888448278 359600798 995380381 410118292 675270081 824297362 323464682 449831768 418975046 73863179 71854011 914250062 778181913 698954428 260995586 916236492 240715364 324897995 941005469 462675084 992108301 482550059 396947917 995108109 881484910 339396688 859472502 807087 282415246 444775755 999774296 783119268 824990596 968142963 681488621 979526175 807289615 255212363 86670415 23854526 408251169 605532187 211716740 621519199 665122381 700147978 736386764 240280572 3715664 170794757 667407599 517138958 169805329 937974160 553247064 616202197 97358543 72362494 269738508 93664805 370781083 269892706 585921155 765315819 90459829 549002136 763703499 49205823 980560854 528502024 125501938 457883538 282985194 700600980 560232912 808099906 472597395 573194764 525076300 553768225 174782314 378390998 108764036 993076127 818733630 110985076 689959702 554820473 376424366 126153912 56083219 79726570 5165335 416951247 399452180 337196468 122444346 812836104 216446090 700482297 14612954 986470957 142031462 155966377 702047001 43369031 168364871 595455838 803781646 964673409 166434957 484965 93416272 460175795 128850777 8477709 150317367 653683612 412544882 57034508 64661366 860062978 436229860 502275535 272951618 993788501 999435364 770205726 801753397 852612911 403394809 478761524 339732493 972799103 316618164 802164626 594562368 198076025 861090744 327608758 52181804 507470089 870969805 833957344 91619674 907125984 592473423 808656463 198104074 196882404 149440189 29464860 303424046 310261715 297425951 456694982 985727317 319588498 831142759 553503571 590380587 498351989 640749735 222748069 777556342 562292254 118929390 759361905 771843600 255789284 791340203 852918363 612390795 408025850 633834554 473777959 911848037 669823170 495509717 787661844 547116524 192144953 222550607 3898396 958286845 141527245 468956615 710917989 479038961 539171418 182350485 651862036 951535946 670800755 999951547 64075427 102695613 868760010 879895371 43946729 666031745 853325839 477490277 986348033 422791530 7754470 769946169 4226646 880121461 990726243 86412707 755149687 546272078 608030754 445053740 865686137 717894922 698481092 871726339 961586382 129218172 923621078 32405288 630035658 981625923 998553605 851420733 182825835 892073892 514269235 679421326 521835597 24890210 181697232 614115723 544898899 284080333 628323519 987710293 291190651 346677929 538285260 269374674 358693097 408213747 297741658 57414061 145673141 104716067 622837611 340900705 278919558 70404548 940246331 707708085 266184326 249086094 183316783 975523959 489466762 187324828 909030335 60569866 160032923 287819154 789793609 638376034 192239972 709799182 408491297 735879546 491234153 49988703 679182050 87913286 298119569 888555382 375041882 198832320 583459791 579615763 823727567 518904653 463048335 523947058 959274534 466078222 327975208 904233284 411795818 234128945 855738275 324595122 709385586 967740183 13250505 557209232 692017505 893712598 921347766 973485437 705797940 138883726 594864770 216118848 280871658 357311203 17166485 366255301 613995785 651509128 211604202 501409900 80388784 724411506 574620117 884183937 33138620 875034995 206382217 538705006 293890377 15614192 133450752 122584754 261054238 199000893 599803575 121763008 489660829 810856534 538932178 437752521 55719541 391957122 267767532 351668760 81712806 241843279 399698206 436670944 112652138 447998785 803929562 889044247 675250737 594406374 596748280 559598685 197977733 189148155 114726322 927816591 71858532 827997853 200423091 922707633 643784557 219456960 851531331 601489478 896548317 749235774 174012165 824951033 568701209 604138263 585617963 187276891 619933462 548851829 140837763 825444350 397319882 586870220 439245636 35379645 301763428 706119394 157854098 909143845 500361036 781761365 596837224 727765694 200367002 150478673 983257943 113794275 201405175 93694547 867829014 623664137 774721033 507389234 847257252 609006915 293744393 716691428 274655089 201971862 32802119 900719166 238580257 454562667 450202327 659811015 399701809 615187058 108611387 316624893 682790332 898604927 702993227 903223913 149964301 965317379 721879163 975837686 916275042 838189653 412295984 255899317 120932772 585308007 709799951 534619103 222038342 300994899 458302593 72800231 489229257 87048381 808477489 554874772 33672158 684849223 59638554 721802251 179175001 768199557 235564727 313494970 606414000 559938682 461185556 933876793 877630470 474804188 965319775 157885504 480029816 173566695 891297406 665809344 164341166 790844105 636302357 240132457 775917274 995293095 470197948 528719519 744565466 405518571 800974318 402575320 855906688 111470347 916263418 89720226 684353904 895784064 698487648 146759558 258021680 314464753 424290885 190235847 654277013 727491255 225043960 683101933 10884037 68864803 477925719 632544038 647482478 123648402 322707751 686837014 609471079 822444364 217746944 814672457 201356235 711173090 274302669 446927783 285332370 353793791 876395568 354063499 970965654 877325320 454144049 387566654 135349810 965555032 245985617 587363052 134880403 304449217 547255834 703075117 426174282 663983122 503082217 249848538 52200777 189469610 402971990 330007392 786491432 579621490 819006635 935801894 706033795 965074712 529023621 761869969 8024723 532864409 977444077 147380722 349552511 942966085 505977646 876672923 431068222 707615464 911856267 603837774 220786005 778336570 638172894 200767597 196915424 893161973 585938449 505514590 208414336 926839491 7061395 112015641 11527718 192616665 836095859 126581450 146664151 39414944 612972919 242763589 691510550 785750620 41114878 856319472 17384695 301840556 377050562 317245453 939281107 432314486 600331567 825940194 577242556 327991709 678641109 129896051 449626234 670863244 915975481 529000495 747418961 336152171 666731289 357254792 308030430 711700616 58383047 776181010 301255582 208927321 803266530 135834720 719956642 74309489 455041782 997543601 957594100 620044775 764778556 17263571 676199735 369731122 886040701 517988223 500571599 990359212 663682366 544092965 860742963 627807220 88062544 103676480 480337342 295907474 745267742 553862580 253878257 500223282 384910480 320619142 987449893 317210031 430822479 526053013 384221160 307054434 823551018 414438745 157964348 712633421 720170937 227534690 699261217 413102496 630974128 205169737 961225517 876880220 385841371 836463835 261220548 355912260 834141039 555359955 252524045 157077598 56661255 223691489 673402186 616611274 426365692 763910913 248868915 356263860 278044401 857590439 390575122 503632592 548754514 82779825 4854387 593471372 352076410 781721609 145183614 492615491 518438802 379112568 605042083 337660151 371970550 573558218 57686981 291603688 568515194 849821171 735508731 152140270 518549091 236068776 971861425 924531559 546268297 504722931 401091429 992893189 65125399 979447497 964243728 477337301 254886618 318363211 914844324 578679522 518948408 566483257 996427849 473070878 741924236 214715153 856674026 246761911 547350438 874695637 694041632 660836802 878763027 952624903 476882793 372294136 673564516 400298166 204211062 428567697 562902001 776302826 400219948 703022314 450820877 198411093 46432985 362384958 371781994 235808265 655887542 393187378 538739557 658091811 657842343 594634948 910549314 425675929 836264109 524336819 27611903 734765493 592578582 824835643 427063350 346766268 589399865 426306008 859242236 580828862 305715008 596736074 964198412 971314311 954939679 374803886 212195648 912129476 475659807 43166762 258998793 390387856 486323863 266192554 127039452 231643319 747564156 767090001 678238636 205235390 328310425 715287072 48955112 837248837 389418648 311143210 129236040 894718601 519438553 29328243 815592051 741752283 380073518 104794631 6708637 854953199 405969943 267377134 135064881 990293688 142975839 317945887 449982553 48250225 328883437 934875973 65351141 756250653 853008913 302601036 488335664 964429360 902701069 87907501 910908061 183887319 849800967 873456430 937121245 65441618 622573422 802626942 241130029 824588028 396582997 605976210 56885710 435501338 766779077 142720701 408848414 608672157 60722321 860199603 394482897 856610278 185122178 829445511 583872867 324292771 902436323 400061299 186453052 852594300 226692905 960627510 248437620 387565506 317765799 870871795 469073193 9200575 859454947 147980150 472731428 665804744 947988145 697922843 716487518 800071211 997072503 693433295 734276223 490253511 638567669 581794277 980249996 983828413 866360944 651812187 208441054 477273415 566272542 354332165 739098993 471262401 603078802 282833071 132926932 360508454 103720369 445024362 433333522 579325598 289166339 260410098 561154224 768243239 762525431 914119645 186459987 844079158 644431579 947763397 627546044 158164746 62164452 495734290 397662538 715608933 282100237 271346599 294326625 407424892 251963155 526983552 397893384 306415466 117701930 284760640 35709 134620921 403916080 814213974 619791074 675988885 863201250 740345815 510983277 748425428 533001504 100001601 990407360 828582301 646325883 461837170 395434252 898376341 876077206 735201912 797693492 891058368 809815118 714881604 771218429 626770328 297977831 349777515 883806911 307116112 548646665 491898930 310528901 804567049 743305467 678912599 498972565 8269885 501646011 442632607 324750114 132593999 645854516 432278613 690046047 771938918 8776082 428521067 483230378 390021112 891663535 766602952 214704726 178194569 40736272 280666781 856177031 124623955 763061910 615135295 942185939 247088438 93872886 390617275 989584856 414247878 807569375 803871525 302831978 701757175 573546769 350555459 566802770 960676711 147583883 647253502 242725042 638915346 829108281 591863847 637740291 60613060 363593170 529906423 875552747 44281172 733471336 366514295 602297928 363987660 817088797 620545892 474175804 378757619 99416016 588783346 948215370 992060013 538080361 517659107 262994034 878088530 625018606 235134272 592542713 287213307 211667419 232579397 217413616 806968432 852150815 93391311 204850870 726686567 237716637 324012484 699437059 190101471 714222881 172504108 645207967 286021395 92152407 366037863 594672412 944795510 148610098 976771382 409664604 787366201 271012439 831772422 247825095 761074367 298411497 163449860 78081924 657484822 395360903 994314959 433133053 32241668 551389499 676386203 76874599 59125423 440482398 461926572 952497193 106079019 462679092 345284771 76528215 648752488 482196577 416399026 274327852 514862954 457500851 766810341 17496923 226534189 483964743 127957201 216008138 951078887 275815227 123025647 751562835 60449652 192615239 91322027 173651737 772257965 433633519 994532839 28895232 918324165 778323926 774374034 368485524 857622841 309650301 891920693 165533657 419270541 114175569 692835376 419843894 894024445 837734013 693111976 931170018 631004049 241500436 896731312 390406543 9009001 237442350 805986862 606216921 89204388 23371030 450178166 430443236 122797110 288633605 622649194 862227410 143357199 383005898 568407543 284262363 107752409 492632772 215045402 606941420 359371314 591290985 332200646 174011331 576208263 713515251 563461520 23990643 845235098 992321213 387065179 679446636 183161175 371994287 679238786 251188978 612158294 321227055 656832742 123942372 696296426 670243862 254066787 933213071 63851757 334683391 679032161 398631761 897542797 25114336 353636334 467514174 391955514 549237756 158947879 607894190 81742281 296172027 945333470 980659439 308320634 802345252 243506647 568648314 724944990 145961482 109651565 673673767 105768680 384579163 557466256 951391038 892800455 986225408 452307929 821609600 817711582 312155491 118432401 584195372 490080238 546504553 452693831 601177620 124847885 970396113 764043220 617301900 513259166 296132351 6917238 794819489 66117951 615962279 318905193 874349129 314809390 235746473 586524728 583715089 806072287 238902659 306681867 537645962 353685534 966653942 748264601 595569827 111294591 106530809 702250108 714299105 238885609 304772910 673463378 438972 203453334 952470630 254452271 815768124 274590236 458690104 68494222 828025585 40709209 532110876 988607330 407919016 786327781 164018023 208151033 845916953 389125476 808904971 90000164 655168454 900615038 958850639 602010677 793480290 275443225 553079486 286784613 945870794 309409627 451323712 834927267 980341869 321214747 137392694 554023849 31630466 27823080 638419252 717823765 162349755 957841158 438594695 450868880 885297714 65581083 130660731 126837489 438525944 780758215 533264983 485387794 364184440 271396614 325769564 517970686 308535312 413522108 340093682 408590290 727366548 811184512 386610010 801405839 761933710 15101865 866190839 983658945 111815128 595801807 983525866 495505031 889751039 630316532 345183702 759109243 148398950 27374925 960736618 712716916 541383578 31299676 468741023 73224472 990883627 507118674 421151521 805921717 921812452 892176057 987117592 97511508 802002942 362774250 126076825 972360127 579061189 341951879 371500666 288876398 107888763 686389722 153420457 527916018 833622583 765204906 546944684 850803688 390383393 496657323 464758763 687792087 916908616 858542353 720490821 548456442 534471099 922774772 329686948 420137612 830470210 785442455 505505991 72695017 419722377 171262732 328564224 824692999 481961711 223065607 706400437 810584582 289433707 23473470 164413734 232832061 888875250 283823335 689494296 569158436 731265701 689610929 649709211 621846694 485874503 443872447 615994554 757765962 506948887 366764472 876322703 376299487 963033869 701302877 845730038 579654591 967027940 671318493 879325184 592770870 941907725 667071096 794054097 52968432 146214852 624996786 660638514 880872962 436916135 914780450 993502388 565799667 293018130 216260206 765124080 950976519 320240211 253924124 249378258 340149776 262673708 286019374 325789273 572795094 861570356 808627579 874187716 121513473 226032214 357596113 163837395 470698395 91525398 899977653 171386497 16159152 692804577 349578600 304891772 254638458 392606628 983802715 986718843 515502210 190677907 389893270 763809267 205741507 230601258 260939147 149216224 675672212 557248335 478493014 917976654 826228854 445528025 583080019 143450432 453774355 865740537 669836676 327650390 425554843 817590023 534487144 924291423 331500375 860921262 143300179 294373270 486484772 293820431 177997601 625789520 984124781 305411156 348449700 544134270 136078762 35260239 43715166 682428773 939950115 463977994 878923902 388372877 935337558 903835487 690114858 313904099 601199254 974187985 977562753 37814398 167334070 275377803 50117332 173360895 424450551 132174343 487020226 330366786 419350598 807548280 159501201 185430887 730080682 565168897 572822072 152309313 269420061 70369992 685894579 9164907 192666369 270992698 817902177 155730734 371558512 162928716 157504678 424604097 555278785 955871950 569635577 753002615 634723387 45189323 463366750 619913290 374306348 573035000 512064379 36196869 896175626 528639331 580106735 792775559 40011270 731983754 600421115 692700359 726238668 905179376 232744989 124536593 685801003 586659667 377953301 842586665 901373791 695261278 312320030 924529830 994550294 401128647 795549884 238443160 238636828 757222628 931633056 485606479 884986599 319102688 203488491 304998600 962536011 851459070 190393836 866009142 937265610 148083094 950206022 530396544 682412990 548684507 685577207 513120066 860309093 487264664 158265372 473579024 70203109 232867748 122779914 755915590 467532265 216738368 93347130 347638462 644368435 844209917 574620934 399521411 690031444 641990268 567184678 569613949 409192890 351995668 408829655 150876456 967223962 271727337 517620309 409336171 805192865 873464245 48270310 373035865 272569209 29906676 941782983 373515964 750647428 756356700 425538149 79684760 732414240 497521727 701681903 784919598 365612908 258050756 339013671 477535990 776509343 728988914 147144967 820451703 755196126 606440059 915687593 667433888 282633649 919060701 716900951 75973185 642094376 57896625 524875402 683129002 734453844 968758702 697006479 642844675 779724161 876899444 590966747 962399563 333521887 11523181 705845458 287780763 840666090 140272356 996066158 645123568 137139737 487728935 388324322 957449031 604988656 702290961 678795504 660384329 491942931 437415768 161495189 818951090 740972751 645092315 938066118 345443682 433139132 859027386 526754026 869136138 384609219 16259674 774728423 410303474 25787271 202971550 303516739 128444976 737843773 375131888 763152981 518005682 300173625 546101395 307208941 534349237 81710570 170475926 77493520 775161376 787922860 928199739 46797354 611561079 339984651 593513474 629854780 434878621 712701284 424301997 336960304 186121731 339877086 977048683 932669278 267135370 751158331 391448701 215349876 526807491 55201600 414258407 632267719 674269330 47362814 180286161 570762475 739106213 240371583 326380598 365374840 342799691 769819055 766608377 253675601 985340673 549406946 359107421 757083423 774494315 232736534 472694427 54842702 945217925 596765975 780440544 866646082 320483019 658724411 902754160 345572278 443203456 510058974 958665248 837663248 484137789 554385811 529483792 977410965 235803456 293500733 522534022 68069230 852890462 558168381 926767323 515477671 530596017 148210558 172884271 734507968 136934194 322946560 255041068 134918173 799183796 776166203 942206258 65606311 765603090 144455517 886027693 313715332 828178013 460515923 635318200 257573665 749173775 665436173 908153532 483312655 987751026 53544745 282895529 788952987 230245071 928163744 761768169 902471478 220216140 878500620 778913381 281206188 563507887 956707748 128265177 743254072 867997459 114225979 481071172 719030909 212495960 359106558 397125418 559672043 455525620 878199797 961792454 971236885 742840232 799572509 703358761 291572633 185939397 964700400 223218275 15420152 177820692 495051977 571604364 957677296 6618948 361502954 336317056 206703717 107828697 621565755 336821755 271924095 309658028 250102003 104387397 880476451 738311262 234997410 404855764 119026642 898321933 677992746 19798686 126392143 130723810 374213037 963508733 244078469 627992728 327392772 844327564 569970799 912981878 944195068 694644302 248698943 55772570 685244332 188222561 645779939 864512225 690191543 767122376 464651416 941713072 928420645 637620364 3350427 172339923 854405928 522553108 173937701 70719435 984569263 307795748 445531632 597833561 223271913 274545076 105357382 284000570 461750446 675236925 395372732 978103492 172765579 453941094 688247709 881709902 423160666 845808331 277395627 381169891 752924313 127180059 98773317 796461736 425208783 675948968 196025527 982867283 162195600 378164438 742854017 219798272 551854487 831322927 433816273 902692389 929948851 110833394 753351478 758786481 331374656 137280302 780081635 346197489 418558491 473733386 204401826 347638122 382042288 796378196 790673592 766354246 472792401 780857429 219181960 124123751 109376373 980628769 855147203 551926289 188710180 698564047 862619466 775853391 268170592 757089802 438568087 742648433 803753621 667746551 410821149 793181339 608174825 570714367 172742695 198404958 144665633 834518432 986154441 871706697 491685441 437593180 572893692 591112329 335163148 516595403 756014475 988710405 612502830 199218766 110484864 56894598 571767901 55169239 65935696 141608991 857630996 351120693 961765656 883192364 290421527 605083501 455570884 719029301 183978872 380468449 850338317 60278781 784060803 552501121 650391802 769817809 554760315 66038100 853980952 799789012 354605954 771533953 366178240 411838864 279208135 103582322 12228206 741177640 718390 155553881 440671581 737648706 940777891 113087264 891074472 882578426 253297005 701989682 45284779 149779649 205522952 568418634 165565091 225407387 194992988 25220263 969827007 506721509 996089105 48202296 472745459 472156906 422707989 189065163 654306767 692250391 810886842 899067293 24511526 121005810 252830436 30919194 969092533 942693990 58196215 651469745 849174497 315010800 366610907 599623093 939080939 610593930 573311953 950212555 672434060 810300468 232581020 957603258 390776354 537407249 195554558 825711913 704286511 589921803 279029977 94178558 987978885 537389965 431870250 318217026 351784270 860599160 48529478 778079283 103311135 717524570 964217730 211384511 734006509 550823056 743649814 717396197 63286561 919198928 873143969 821892853 672701740 898251700 898971973 449041385 350334222 792793465 365619451 340892428 543969176 33022772 828830627 191566111 345912089 181275193 485864428 837224903 875556586 725012824 787921853 389386948 783139630 374953980 421618212 910575899 401196194 955589675 55687551 50321321 308065502 565510177 207823392 625024182 905007998 756257326 17174828 728190658 384916537 755519235 538502555 436024232 455805478 136871970 511519767 29849619 935701222 414854413 917644985 881972168 980293778 414010777 116308283 947379974 514625197 778925148 276046139 230513165 117149611 932116590 977410820 440213012 97969394 230757309 816736320 88975572 865504154 999950559 792430510 49588264 684757215 131287730 78787170 79769739 895716615 877853674 431475820 408035837 892329958 670546804 987050279 242446794 311106753 545506255 297021848 666725347 148310505 796702525 186457984 30604173 267063521 88453258 167073961 889325143 53224995 300447367 688220276 952202400 717690179 660906456 677219737 321082973 685799468 758611564 721999429 383091235 435602006 125956328 478158556 21278145 798394603 537466582 960662207 956356396 99109271 304241909 681658550 260771501 950698730 123896684 38750146 950292362 360763251 959529727 270062163 481197722 934603728 502270308 916303875 307578477 782915084 108471281 595027575 374902755 511800572 734102970 788952780 268993015 934000517 883967779 27376518 683214809 504286381 770090183 838559134 153375037 486895204 513133234 288969818 158019357 151968779 308052169 413538568 862136028 671899622 305301285 224577593 49504474 395914693 951352970 274441085 636276153 599075881 209344149 660461018 470462096 861358101 421795431 43482633 570700550 602298192 331181183 458698383 906591526 372367971 480524199 770844617 49786012 962875437 394399346 521583870 420669496 972898914 503491201 691597351 356216360 471851047 416923350 698821899 497711344 311032053 168563808 7560202 812256717 157189200 658016921 604854159 951467802 706110533 969435714 743689711 721688961 656163612 887513429 300231401 222445913 625821877 262715698 155519687 960675392 467065408 79817395 539004090 36021717 227103885 640301493 968078890 662283054 837809781 555963402 777286424 992630813 849334490 948991369 938885743 224899242 449315804 84205709 934503781 50316816 477657492 910925372 249938532 591579426 989909070 752530788 398101447 248049198 359964235 71186574 724660449 552676442 534523975 863000410 750715221 893313257 886553759 511519159 993482507 245216096 479148040 422702947 624024435 780822516 873641851 746889621 306585391 419274560 857447448 312157619 243274845 651289379 521545556 245903206 690374509 394233868 292795875 926658320 403923805 297637295 153740950 880162350 2021908 588125137 514133686 636587524 884547608 14457419 3314649 509914446 352080473 941350477 293174839 846363394 515373733 608600559 736493799 462148466 738562605 634700743 910392824 176212508 857682378 434547657 25843645 165796094 700016652 644000818 885426768 689659387 940876715 279111744 214291045 87883089 595638234 253952070 111350317 126729605 653641846 506180653 507206199 774932692 150528611 616921806 262068832 56466906 35667886 662033192 962010719 979800939 294213220 51338574 834566014 483608600 337846438 580742753 210215037 423921900 346034831 767906957 468320900 727195872 186277029 767227784 540098900 957423488 770553449 752436873 319319472 56556271 345940363 320652994 202251845 941716556 505855731 834530391 529318608 147259766 627924328 749081964 758160931 151524947 802802386 327044859 548460834 260991500 596158015 231897853 829207356 223882482 483275174 99127481 174972052 577010715 10102238 548974435 599311022 288221478 26217356 276724695 967014596 873766960 969178548 418830775 565899436 212251806 282859162 933626433 582634769 494460732 426116429 906261269 736994106 584735107 336552478 366498309 254825378 575646099 193010577 448325411 287014845 188737564 452368572 407960513 656305858 287208355 241382785 434330935 677354923 804982777 110376922 714663470 826856347 851182224 968646600 734785634 574347913 715445390 589335431 650197136 8031977 399482526 643223976 588474084 789789712 779315143 400572179 529652793 830907416 906395238 206158756 293004837 864639932 749918500 292583831 864111075 243687436 572731221 421893059 593152274 955508964 714509004 568205214 863245179 360920228 953321611 946332752 409496133 570158861 758098132 295304856 145970948 316503198 477718935 412200166 6083881 840396962 775263227 32268028 91364384 994883471 381825528 508942098 184798276 610402148 964586703 210359457 694441426 280850527 989788855 630401370 94180308 433270954 775389384 336112793 320635034 100701714 144713235 438405131 758379931 811456554 839439680 475995614 831886297 773984540 757276790 736305065 255656038 57315678 507719097 745150684 789155336 633617793 304987370 221797235 848866838 65068246 470630772 692529645 386600404 909631728 917981342 632714607 460327062 316251307 579144485 918756649 731223673 566616458 877452498 205762689 78862166 913469813 418416750 498109443 265098538 212663541 284276804 209949902 156626590 182445284 897118457 488865330 273550648 42496160 229860779 743588415 568210015 446073894 999423394 407724206 34807954 170775662 228910829 547097348 865596634 816149554 408675085 902131977 942747393 741070450 158233348 637270188 212642326 697366046 870763415 999646130 328186015 564645019 39310077 733614145 303365178 4988744 870636563 830254368 997732068 3684205 489915207 240024978 283318390 538389996 889115964 662688122 306265309 777156872 681440771 892498288 982873617 195912537 961951891 114758472 675822727 981011954 706032960 240710822 293710429 103929332 389405130 206092585 911094919 385244587 613782582 203656416 782024666 687466828 109914834 867614452 97401038 403841281 428510982 23445599 41711558 935133121 423099754 28838167 176603199 330195216 486151295 472773301 183972808 671360842 966239655 485140894 402509467 34245133 428903770 648340132 716056445 480732040 494041054 235211201 157914291 43986343 480714687 272439664 237857098 897735550 654579969 569167758 104869410 20329960 642940382 447006743 147976574 132131097 745261924 259113047 54160522 625425553 40142804 713763871 375847877 712507637 275323817 997850794 488251223 649423299 604408091 103908889 932995023 773897629 354456096 670342028 817752849 949136022 237832047 201887966 170226177 461140578 369455609 878643744 262005993 385323403 206426795 30413648 149903547 350858487 309250048 599945018 931225393 334964093 486723378 361162451 866148891 381381841 25125988 385907331 378788257 963705270 620762452 784668009 232180903 283819378 464790764 962260301 80188350 499271389 970611957 611220694 173975380 278661410 910197395 898335958 151964083 999024266 993790909 486082877 3005513 785139418 850810162 662705445 882604678 486340975 543171805 776315593 41349220 529127191 934703274 139507838 173487326 788699847 111721046 925931109 581379373 753926760 977760166 12326439 478378591 280081614 467508066 268500804 866829508 517293072 423458635 363391961 179657628 294971563 906046710 234566188 293209944 44645145 674632431 38111881 957931020 216183463 895399655 533276143 622787480 534375473 874104088 2567423 62248534 712935816 230912791 940493646 620845094 962634732 167174501 768440281 450372608 629416056 640660308 519247895 896937367 4364315 488860333 896898354 116277510 911279513 145840425 197354299 12067307 787205750 837030278 275401380 100688595 86984051 530970929 407577462 238945235 419661356 497359277 183387602 125517643 428997650 165155532 209195553 638523138 358099439 31741252 672735398 363251491 50772403 94915136 955378591 778079213 49782523 46070135 596486666 620682534 934077998 407436421 56959810 604291884 226083484 47695572 377276877 178081536 440776378 154789944 552071248 989603635 679155061 935599880 943095899 775537718 834314846 697630452 131975161 681048242 385890939 658772153 924484077 788084043 51621430 841867692 79999653 237715567 243516358 589011817 377376246 16378722 647205414 114503674 611588107 620159860 248933557 499826234 717576613 155771795 873142342 186508901 187313107 706780964 21594916 168809571 612968390 392361023 14355822 904407313 944056630 600766976 674993809 92242362 946796176 267286799 988333261 153228912 634670466 527159019 929850058 163406499 851656313 571790374 443092912 722868069 873194251 264166608 937862839 924590838 397982270 470186687 275482132 288741240 439325781 121839784 198371035 664479219 791457428 515998838 646935999 156766743 265392994 922263968 961861742 398975788 948865770 607337681 926420424 206890760 378378597 791851253 632843455 464637307 157011326 756299476 803453283 179999634 772040060 477080178 722340585 361426914 546961813 615699006 781413915 898056066 617058584 157774994 857484560 145723583 865225563 9139770 703386480 339700963 200230512 970862501 373278631 847991433 505742143 586566120 570496143 252332092 724315911 847864665 864019885 739538063 741507264 360002115 97640483 302418753 57302972 249675355 465559316 987667426 899159261 918128135 715122256 332613298 456263949 850572591 581891446 369751605 480108149 712667307 263853326 350874313 646492344 232700720 208631784 906568526 848981710 116887346 269593124 339109049 74780175 843400646 793473645 414690996 891655471 119276832 740766088 630925623 643630615 344522583 978931318 100457127 531028092 549472301 860049150 530192927 729062027 907566047 88696125 53330175 552864495 175089798 65171016 789172092 65847483 540166193 860789400 456295560 107633354 651994602 805239619 10693741 276972994 376266571 753440732 156122456 579366703 883916289 73201467 315193334 952183985 28948559 830373033 756492571 840724960 503276551 723339326 950022552 395768090 515329843 935513495 578999924 835169796 986316798 666423623 273231971 944096671 856639353 590161108 728755436 597692770 290187049 70444706 304425467 79716457 811306375 985695008 671572705 185520195 764724250 402026214 760871126 23433638 732403401 444749500 550912596 100313474 648779264 290722162 662705501 154052477 648004295 576319841 269202308 450369004 210268601 941906700 524229730 818936967 798592937 245904778 992757506 176108131 126053570 606357162 901144217 742337293 114171219 771688345 905457640 200937717 742095552 140117373 125257702 898774335 799146974 71116861 39610658 409606224 648045813 786437493 227194018 358083872 744690550 226621145 100704054 784610916 139047355 712299331 798590316 420745162 610030861 835238202 935378659 830797248 64200771 784499652 223067425 53577993 294258742 531028026 11604196 287296006 886798815 824450095 289983270 728422076 205959323 998299048 991326913 393023930 99858713 761967259 622776843 709786826 512907358 267907160 429780476 289125253 183030304 726028167 14359063 970727239 85898892 559686554 741274870 81112411 8084049 838564215 524409157 95944822 969252327 471999331 200077089 159541182 190818108 824532359 557554011 590288232 517662088 541448491 644727757 483539887 294131249 596965649 236857270 808422302 614041250 395944154 461653678 150182863 757713473 346904369 757125746 601546458 246019332 380299027 658370493 144926957 896395564 193188910 702741968 421101382 657229087 489730274 289352352 898850241 841356208 660652635 830277375 699364074 290518557 235404367 44065681 494621934 243039242 843829757 444899272 123858625 824890181 267772654 992880051 704232238 990696496 192503321 522679643 851523249 30137551 447915315 829770686 330163364 815115201 720244138 5585192 896963764 969444498 736974925 576331687 444337603 108085197 49399430 900052339 891235065 695540029 431574667 478747850 263611614 174920523 164726995 283570177 328215842 133243725 120090586 380319901 340592899 278535175 987791205 107039069 120077993 961651079 302914738 13926650 970874131 121377604 385567888 77203854 910516763 607310542 396448855 812432000 529916282 678967643 692872830 154798116 413934019 905653461 667220804 749904348 950425528 344591854 915278480 172574216 536703905 751628104 611095834 441360726 557354900 291123826 146177259 997526087 154491883 604128114 408239164 789087271 849725966 1617989 198542501 455065367 152346549 40969600 441621876 324399629 794358329 253583940 528542587 734518859 163743865 269072565 988749902 233319296 765640559 63802186 258531658 923036610 92000610 798826133 46090507 574782582 523873285 663704601 293759027 592505178 734729731 966275513 745408159 27722792 46768583 994512390 838389215 967535782 644143301 769114208 758012570 556092164 180595154 800887388 227769753 652738766 677346090 324834617 415009121 998670201 122167250 526887100 85721786 270068491 485824397 102266153 778689822 717989701 599256133 216813850 428656235 99643111 848294259 659816310 140056099 792959072 364727629 798640970 241878669 788958361 794918512 939416649 53344091 332901119 743584577 401544511 283775596 621379498 224488249 828302024 749855495 742057258 101325999 733480114 516850822 468642586 557601999 86805699 893633619 88765737 676936434 409902495 369136639 484142136 215594906 179212574 364499158 564014588 569540169 90894094 759648051 219494141 833828293 43876232 626689030 259986856 734457216 741361129 908465839 913386996 988674849 276991369 308870114 435967329 417531112 469465189 851621948 803092855 454742094 33175290 813771358 137814496 502392516 913663899 151041517 55261087 187986740 1576217 926330096 49208959 693870777 519447219 622613022 880773716 807720661 482096674 77818535 833043632 61565396 818508926 904279954 785889280 647180759 181351665 995313368 118613762 598217577 318283089 625671508 452263663 540845383 95821765 40232904 537875984 319997243 442145728 744693795 268912188 382775059 305667860 208562322 52173293 150509 751573819 439350530 829760895 207275409 76988412 759357923 625472589 963022985 627608905 262895301 785558318 160655582 146421743 684370726 820998356 603526545 16741884 302427197 231056783 551946264 644777643 672129747 447748354 218833320 847131391 813548061 23820007 46238778 52501277 818416042 202408978 990584894 161564335 328892549 241548664 528170921 268738621 886424276 626984470 876840525 329343685 471481098 955335952 672504675 992576679 479866955 929090593 387008102 907643191 244065070 249572930 480932516 508295413 739060201 347659348 95697981 855216982 268035352 458455585 76888616 659094329 269565332 644617133 723327863 45984680 601909898 461344255 589036870 974746391 620344499 664275524 111571986 457938897 76768827 530643840 624644971 176473999 208067444 884322043 32735924 436404189 749296591 335896097 832089155 94908928 952364773 212560658 83940392 655844897 335600846 784718868 632860924 144325881 18075460 40687563 723304357 22328897 207727691 831189833 250377437 457660757 459636807 604348935 940560893 917201712 913478728 259992479 321798136 261086097 282230574 951211709 609880063 634688818 983587201 116787332 565009308 553154534 22493205 178973771 34647857 346412674 297791071 137887236 238231425 151287660 628205460 696051817 950074610 782250949 25535207 65128997 378009341 191355412 935916476 177695867 300964506 457947400 310226897 392789831 987630440 638018871 630838836 401080571 54954709 182024490 572679880 398710110 698177964 800626768 662761473 693973587 834324343 441403876 992669636 310240304 718967908 376144550 839428319 556812155 51566379 309513642 668646109 468320251 235127576 840064308 699559502 845777224 293730105 727003685 383236335 24350222 606577092 827239078 385841586 900236128 538941178 239555074 769269652 944260420 843951807 63686205 213445287 725192158 438060791 802208658 222562397 870619232 338772639 838768511 115281627 18337094 414666640 100380628 27844344 401584579 470221191 13666637 955981438 437434823 458361647 730645259 892727104 878623037 348240554 270341318 634581260 792114281 467575694 615635002 302245736 681169104 415603687 767330575 51426777 540077098 133699838 388097130 795267527 951821153 633913453 724221385 864779094 615235855 453673487 256227898 458346806 844430924 206263494 981475579 969675510 577545487 634127021 279412166 768793687 700454426 979426669 252661186 861869979 760035856 738378133 31151143 493475864 20764591 382444298 755715242 323797925 908027857 204120033 92158120 58664665 946500914 510009940 797295149 869166810 154455255 624877412 304898156 675457192 941970091 901648877 304720417 661599025 31718693 810913766 967958400 451957591 588607949 637234541 107095209 291560658 693822776 400984617 652964161 54240089 71639927 587617681 325945537 13774377 162336530 411992640 125093813 527398545 694471527 270614891 182653550 943849352 533535024 801504123 526792129 631492923 811897708 853375165 642869080 204662970 615003703 232500608 431043982 567909675 658440520 931068631 147460618 96746682 261012628 902237048 600525364 427826671 176524496 224477462 687840591 790930519 253641340 790904560 824746447 894193327 801175723 62106130 935130488 336256156 51101645 407743109 851509510 122068876 226332253 118086093 368816295 666483522 681998770 409704588 479616065 520144739 74550986 587401957 548648307 107886034 925067346 517467227 439834844 893272396 194567478 946597764 699591222 892557148 521515794 937350649 292005812 921337746 726445300 574876294 639371937 204730539 119220033 215132505 696261233 763204983 529029105 880872074 406853696 101862671 801348308 525503728 208120742 338992992 139144500 998627489 61110426 465540246 715605651 595491211 291145031 820978691 450659799 654455291 896760124 38069295 257969521 717286382 604052693 58153105 355388709 813296143 408929696 163886460 59933366 268792611 166426685 371125074 787214342 172700173 700882087 209383194 999411700 435047599 745242244 365334861 63322691 745675201 825525113 86474251 834071852 971473295 54594916 203724466 13973613 668975199 666324382 436053552 418855603 980479794 704945093 144166412 783987529 6360090 828978738 368269372 649907421 731402447 795703424 793115027 17701722 920480993 223129450 107956127 996519184 745683936 302113966 707618609 621644717 764776098 342634773 542077704 220684421 413279818 42296755 749564734 371365874 747146125 835096888 647441193 710932611 517565807 940066797 654181494 746000093 880738634 880359116 883441969 720276475 474739258 430163113 91850624 293642810 196807535 446532846 585478924 758446354 121356533 901364468 794469464 762329747 269384743 937405734 257840458 612281921 806012265 807037948 755475783 804233978 257878230 490305853 101412896 897100353 534884217 145448154 372643274 280022593 611979953 484203836 778040677 966606607 588294408 694989476 925735311 37554455 527522962 571071838 56332143 677254397 707617489 437745314 791256898 713703234 278086089 526501750 249970841 383284775 761544927 270582665 932027579 407159139 433040955 736439983 766526172 975696149 625106676 222169273 916241140 542977617 903357512 315063581 297748386 449436927 681356953 244853030 554903157 672480577 685276140 33544601 543343425 579771435 466489927 661242731 763694047 447448 413114598 855007856 99483743 474400602 362764474 247764658 521034068 407071063 892643628 653387723 662526966 201334379 528846587 750052982 572243606 211509350 101616757 449435023 344660228 695641985 831023086 188622129 421085909 903931650 78718056 906870924 810649394 443782743 341953703 486163801 78454330 385500468 284356044 180327981 104310356 237756945 421126677 220107797 819151116 660882694 419648825 533418815 177861303 589164289 987613606 207195596 767153428 352316451 755894849 853323965 671031679 905616593 777470542 879771909 191835979 216422932 740799990 36835258 795078934 513371211 660841245 925935070 369564245 289850792 827749019 605961941 11841271 952028689 265143070 126875253 134451715 640366781 396712472 925868090 103878094 988006445 541090096 865204429 409014653 219088751 492118561 444021807 209558607 713013257 656530418 509262879 163673295 849285955 563638176 401071012 604320613 485313147 13319032 977515802 266368782 308198299 161689120 522011671 101679158 175437231 424606739 888688105 616693236 453501288 897111762 329194494 41025096 866120665 681902618 875386100 594925582 744321491 735614337 892308116 254651621 82985764 279764826 699685918 375542723 759846200 525191141 999790245 84011274 513024682 595626991 598002686 614809828 236108746 977642803 634200892 13733193 143664458 199901791 213788270 143498812 83479671 766652994 47134983 533394891 503673009 844309787 190792561 795440147 53037527 454386924 447203524 738186430 451694744 582179420 277101281 736184639 98080013 760689306 484319878 602610187 886864018 412291734 811536750 645320444 816620483 255309053 43596008 409016900 828365545 732287926 218558224 888521475 386336081 565942918 289919187 959921447 985697374 837869363 341437697 551769532 215246815 736864068 816567962 16422681 630827552 422218050 820677310 690930939 882986421 771383233 983969952 532683731 576341136 969762064 901322627 321311863 662165911 582663422 365004388 40482023 359826132 251707351 702446221 265003435 232378109 243779536 842221500 875047728 866536420 130019274 549646547 852791394 535806177 756395090 516436211 588472966 464739424 960752858 690120019 171939478 204946134 604727996 959058529 701742060 986424416 463851324 133148200 950002334 640228019 746254469 332526420 672943254 853636902 653646484 642667508 92427931 863559041 866248697 835225872 541717552 414331852 898000920 942531134 282059482 625520364 141726621 979363041 183132144 438648382 448994075 592305974 75619633 202074613 805012203 935267814 600173332 40482511 523978018 305554229 411990081 763084077 454746226 823465688 515291921 963676198 172986823 280986578 730153594 764067680 819509151 157166452 304913392 786955992 305857151 39092280 324458823 1137274 518187032 910127043 26973648 420512395 809335906 725393990 97689988 706585949 369658318 864353497 43288382 275700464 709349259 24561620 963977914 279515947 722641993 919379330 459450310 576978269 846194104 990155775 559971863 30918315 272510640 511045516 829743769 126044234 864330353 895340475 484995460 901880456 205365378 492240759 790139341 430506 458573024 28813038 998368242 462231034 180740109 532827822 550351228 672113439 47034734 958143135 544425176 502670201 173004863 667476425 947824015 789403811 337625390 643758879 122709884 280711678 69042796 822575051 169329865 811306747 245819006 432500521 485549952 552990724 425929298 168772735 670366127 33770114 746923595 390079102 242818397 643269250 83766830 899336189 598231222 470117561 264075597 329358958 308385476 642228443 859217768 476168587 216071426 48645931 833847666 982246878 25899155 76840626 334749388 549141767 231217179 662629471 749668254 206922388 769877117 356759936 163823457 737000155 381409123 915085854 340883724 83743889 612296576 892960586 197584483 794469043 64875165 537419015 727753803 793488144 837290828 80642718 971117630 370090315 820930528 526632129 640914478 879002509 290327422 82425058 615622975 277733873 437002411 283220594 453389143 240924456 391856225 328602581 463771086 152978799 729591310 359904448 951072509 554057803 433311866 782993052 676322685 590627460 9191279 541017116 208493497 186706311 709371240 827963644 281263424 372144980 365118828 851327310 776319426 657276863 216980143 783224265 925064571 635726507 801976575 379292415 272539389 946950099 677396175 289235008 683346656 315721764 584513891 639695564 121570165 918962172 490742652 164034333 985070261 910998098 585198539 871542561 626123699 687855963 195185114 240755032 412707595 607811617 130656009 573741037 287787325 244599621 471299913 986793258 241773308 596853763 366270858 318250079 421332979 279228329 765186394 490691148 202244405 929299070 379255881 891400244 675012143 259296947 590708397 540667478 134187686 328600753 58857500 189769151 453254741 582795004 547054757 732445682 494071400 535042300 969176620 708199639 669635700 984789787 461584799 715265918 930392462 459329279 872246203 12305650 432765544 970262772 462621037 206036661 935051192 609640460 812910357 432140264 651436351 992269938 195489974 331596144 579907449 600674680 600355123 932255125 259081060 190829510 362377042 352585015 209542661 911509749 951880607 84003432 61073614 848938316 66667217 22941304 291585698 197137869 495478071 463781230 890925269 525820492 890464901 845893988 793875573 116872734 433426365 52444826 425750302 113144460 548364737 757815868 84290165 716977261 554711588 252044748 231039985 132928830 175498178 820225787 552813045 44601222 699442498 292926597 104245024 466631950 384367419 550607538 243162933 965821142 102609051 474660058 212924681 514873601 540718669 494519005 692832272 108433699 860460895 532815631 718852380 840424160 57627713 319241821 82611707 820933659 863008151 922804180 785609111 368282127 917843748 579727599 493888956 27846469 528737733 792590110 502056319 343238191 720153287 628207069 487499918 430138807 435444408 856607143 335955564 646508949 557458408 114452681 279769386 875480237 977227477 18269735 374485384 963681982 773289629 930927414 866548540 962278285 539427781 300318783 267749771 199500481 893494823 762635791 699928935 995475113 33404814 778675261 583580737 656963919 325498787 253036432 145683365 114417104 747536423 576087738 592653271 753185697 71637827 690795997 354983982 580970188 825965218 773364745 153115764 973869245 255527982 162602322 450362399 453352871 351048338 429172888 72416308 484248958 659395990 863116400 628137148 67225382 104248358 863387029 111587854 462199039 456990342 760090766 695245232 220084629 151833236 477162339 568183168 545733036 88088794 112435455 647013155 735965933 245359917 976455019 146625478 453901335 466221053 799280 176713456 50888168 631828 876721324 246716208 796598620 603991921 613528242 837288010 924740127 160947121 624671946 73429976 737894121 114613407 355616339 53908023 371693749 18471650 735809393 535453433 555877706 745905996 630318476 778962685 16632979 741700624 98582123 635244197 712445664 911629743 540594395 895955098 129049447 913485049 596304275 550229284 866921379 781414506 517365464 996604721 657851841 113299169 638225973 953271776 811379101 270423005 664326977 8520986 868541467 446777414 337525744 274126487 357833727 709121507 510458039 724676802 817359489 348919867 754250254 279401193 533085799 398041054 869198939 622690751 607052374 201635228 183867543 728872815 306905978 142974268 275814062 268512855 371699614 242433648 759746168 942537955 841677997 814989196 869035051 543324800 802836641 65290900 695759298 850363144 252642802 366699943 196322842 255189439 336819783 164642472 191918893 407670249 713061546 181832279 674289047 950482148 114232378 225469066 167716067 866316597 217165013 472392648 694119607 274973481 945941083 81686709 68350034 967987269 978074539 757725532 703470148 296010991 342719449 145910784 800057375 470172174 919354188 481094402 263037369 344336573 641510816 182970777 94952771 352843601 574531177 545215499 784042433 691371043 471022977 184197444 813225617 854627743 439361745 648815804 402287142 822426231 30198561 477478189 768343760 467822000 898130210 244518009 858603138 135497119 60318157 93895306 600838455 402657695 270701233 338145839 661292782 129601640 546686559 97492892 519206404 736291299 757692696 528951841 717553874 345274251 882589565 88872448 211500217 399012716 816573168 478409473 235290943 167352030 859527356 24301845 977949404 511363631 534992692 441905894 945957886 119466456 225569097 608245742 550665992 394053886 687055961 772223659 514682894 656177394 603646028 806432159 372086710 472317470 182244494 387241097 929099778 448730496 716424007 35293129 131753951 650002026 402759653 416348137 255015750 872734963 512437936 626064369 484122130 913268404 782301314 794104618 918657292 670400940 727551868 987517928 46382520 27646186 955610321 214862257 762750628 113894749 556705991 168247303 260431019 592581956 814812584 436268372 128891955 979015553 966658199 512618234 992611939 651413601 34199710 837570306 99256478 156289113 709732687 309802915 900077492 632870504 462592110 898799454 59409366 307977491 807900460 234020860 761494840 540030174 800498378 533123621 367172823 795142515 72184807 935020102 300020255 942629227 498220457 774557352 158421423 64599844 644838700 847984138 829026172 203082681 73694112 712466821 927453467 704472373 52530667 453527487 99322137 715349394 707893182 356803962 741739342 107429894 426525804 437016438 504924279 767479721 390660406 11026255 888422572 6435299 290240883 178407580 352257851 849234984 817274026 750761400 559712708 975051892 504010095 235564368 396914093 312736251 119269098 323425450 171065469 873188461 191877438 673598270 118933167 827505793 594932292 637247011 890448948 567952165 783119368 858832449 247255911 115047161 280563561 645091709 729891136 50409306 686821410 474045979 871414829 113671663 781917117 842664809 559698691 437292411 348899818 889534476 321061333 970980430 69518071 993553687 541107916 131067749 789477832 482804770 753951416 885104186 6741523 631499413 555785161 491939987 453877082 145973963 815575391 238145256 874114275 352099361 327234690 828707281 787143850 994127740 519546514 442670351 902049644 918814501 266715244 643444571 244343620 714793276 245585480 820120357 705044568 979235651 828870668 691252365 6559563 512399831 593055112 953638567 166259382 800875752 910192148 640176004 226272796 665525271 469836187 221550793 723704684 201148524 637575235 931113325 317645958 753766863 98757485 147775297 294474785 919477208 120693243 490491767 798553743 349030473 130491053 370645252 431480677 661901691 776769500 325384968 145281115 721896465 282810110 159457532 411386509 372081503 462441369 32446572 535074184 928043238 180004758 590783919 284323356 591303598 253244604 223408696 669477595 17998736 901792095 27627568 598977749 283529498 927201832 677375467 321612024 604864130 579441424 580554536 233728625 317906183 127670721 787165515 591591267 988548026 884378469 966139085 858366176 490766494 354872278 203230318 213110431 521391034 18029323 738850985 903349063 739187559 633037876 869265472 468471930 178737030 461366847 72267411 773734406 540212918 535189196 699484596 748834708 57768776 38737656 434326009 536626637 638275762 755599438 914333067 68453197 649156934 966800410 462273304 122357685 959424300 930738660 831424149 822441913 809184842 978440422 876607364 672733863 274017465 436898117 874643271 351325838 160103128 574489145 872828190 48093650 8427545 130583051 570392517 227917850 739684549 676000695 866832639 569527509 264836731 748709459 596749873 445860639 496853426 100724459 468960443 554989541 757589974 970371745 510520825 99543942 245330514 699124319 198937198 889440073 261787106 587720561 41163341 866878335 247104051 854705508 253481919 297158094 162093469 481585629 212239065 999493386 920619816 123300489 701041803 744154929 159862856 862210163 743653758 860901646 364261247 376414297 668981643 167193551 164171475 74612589 452300903 414403962 276115976 242178623 532175877 713184000 564390797 49111807 460154207 27845653 741592765 343671950 421668547 635746455 979052660 201041408 3442569 462379833 298155159 211969379 22043405 636104169 612902941 69330993 253367711 669207886 196568303 649139658 983061142 407672182 670789095 51465620 923677564 627401209 791888370 988792614 344314794 665548711 87263439 430384288 988613773 874326386 978302457 765798390 977044706 106366767 912743567 474055247 566303562 870663480 743049364 117461732 916466711 211038283 709801070 383382824 546937411 801401707 566350061 11997110 343304693 201866673 911606917 828312411 406743780 741584266 961246897 936594631 133199752 956243174 31525150 327039766 511083961 855315853 545847168 668603391 49602790 748265713 4658558 313512935 37585825 660335315 562374038 393396058 410795727 656739907 560638858 542703761 515441763 115746109 58404524 227503267 507949064 337468347 623090422 50835511 886572877 742260914 903882122 463141462 141685995 926948122 363124364 810199069 568975196 83382446 694038242 899235729 109987942 117372751 752315021 926156082 474051831 373302347 124621998 698929190 277536865 488959489 61922526 808672138 490690200 988671727 211880606 834798281 774732157 106119158 731533079 985294393 749306756 154654527 172681575 831069458 617831397 266538780 177154832 158293338 533924425 885396054 968390639 865351957 981254177 912806475 858941352 615594979 111440550 212800765 440390699 447484081 482467830 498889889 247217626 795819112 389478421 390950101 141575980 41053053 668484383 577733133 194405395 740519464 294430335 812295630 100876545 768421296 292475471 864683909 201176851 276421818 147730364 170898951 672162359 551238681 478605096 335948435 144228232 158648392 598915487 136773024 794069435 60602205 136877528 154820066 281656407 757635997 908413748 834824877 56402952 650135479 223649787 682051204 349883962 95721882 913537486 106217589 773443846 742571339 928750961 508412848 356041589 723780319 485718164 771322940 129604726 365415185 232177347 736049606 796771075 460483177 575179416 6565672 286403461 249147674 48445435 280992302 78147031 699551253 38551536 936292828 765942014 460879028 287695088 862027907 831677459 758882226 931161673 808667291 887003936 880159473 676077703 202681907 189523570 144965847 389010809 944982417 404323403 725745514 529144473 256640199 829346041 779935242 245235982 8986540 904002609 662870856 6375089 511935251 744798396 372708235 723707096 972761786 457194317 935108230 267910692 273242360 968708140 60409635 813823617 434586842 421190119 590778413 924731204 162427860 182475349 277255397 851694211 964453919 306304697 727754497 579702786 394813202 969798920 771345528 268123117 346665155 409545566 6386492 455040869 988051172 206640172 9095653 501785181 170325622 4979340 859017388 431799768 266087479 499553128 860318238 410883932 732928779 385158074 469294868 931784625 732810237 739526898 242281633 944672641 371086369 175800699 540251872 822680272 417229077 254435894 83315273 651760417 111681388 273324549 4284486 275123847 8167475 765703557 523456269 921925093 591766078 771800488 913469204 637825394 513099504 75215121 146700750 851582772 203801983 339457634 772211954 66343931 504696522 876516030 50971249 392440392 613465380 574836052 882093364 264888150 699942277 969680361 788235592 685298605 603410272 777032298 395905237 775359185 41361674 908902744 18921956 473029928 973265940 308859375 809918419 170540625 39014155 62165725 407333241 776982898 543428098 485679006 43908262 596834079 19033310 36869660 579067794 176289433 131832048 350665881 141754965 854914463 405726636 602640606 280641205 62460927 400680314 169336758 415476650 992800981 556430361 141581589 278017402 246305526 756326067 86712667 338178673 918709879 927636650 507739147 776280241 683282797 800292714 543157621 870911699 56770115 37196944 415142369 239040368 769928762 873090898 413899559 970106996 991966502 982136063 261028925 524786007 408958871 458728682 983816625 664697204 600029390 588601918 419894178 763215027 653037256 177738566 763941200 311002582 229729651 394740256 736136320 675918679 161470498 799535068 751767159 392835344 927810146 492582347 983838853 405791915 241385619 576970184 27816198 895766879 962119026 945574042 437557681 329980023 452029418 244647273 397390713 562093033 221442513 227109121 3302472 738453968 205577635 371171757 851261776 105190930 581136218 896339451 499031120 124558139 163806349 469381593 16660210 559653099 81667873 843794475 200051499 830581259 45945878 31318170 203435727 985797616 183117675 477541511 953190940 55255761 345407079 472709631 789048668 391063698 212675856 424189215 17238575 945081517 351972879 610485547 211022141 33477397 37097432 918853329 959093298 745789328 936682157 69470448 236950097 435309429 808161931 387398323 868032857 196551497 307169286 572865386 673511358 244851792 723474078 852619862 101852421 188742139 137253714 83907530 74321613 378726048 932209228 776621680 147722865 166000433 74978865 509156257 353366911 98497327 674636788 468013051 698195300 135654801 925848347 250102055 976463608 273842169 673282208 104159016 861047311 746127091 873386839 282418985 125143111 3678324 359667015 960114599 657482430 384234432 199265750 701846932 876951507 660765146 258672829 980510063 271908609 506684034 527544682 734843606 98542695 845637828 472023322 588542992 792507633 843805961 447840720 733373892 30692706 464006045 775844430 238344537 872971684 388697188 50745439 145736528 998644636 542080562 710669857 540694181 251511094 679930803 57543489 722113869 29105267 509968605 985052944 609373848 970274752 948903092 172322894 11509731 63644478 919147095 511044426 408621777 683278447 432697134 341513770 90097771 371381386 830582954 810663692 333628068 795273469 248877608 631703381 403335948 481904438 728648450 118487997 629554844 141253430 285286397 512497541 437142429 448291250 69238613 97808713 451631034 678232730 611910268 343043177 1430429 709567773 112229705 614176524 346369928 945017164 381387207 770198136 68203755 931782893 387618913 182078627 316830793 679194268 200125362 768338587 372326834 985056122 174197206 504670612 698281072 418762379 370601532 246182854 700177738 942488461 481789568 821156213 799672204 838291489 553377969 759830379 714538922 514818770 66325027 872870708 39998590 933228350 851646958 616274476 761537531 529757088 108141773 516283671 583273440 287853184 900728412 405472663 260236159 604713540 408276680 553584542 767371855 512049574 226812772 466969043 956256687 77364359 21699564 627232262 615388038 370611526 558727103 964731177 512620383 773578758 253003041 635387246 124586977 192645703 616186829 320581022 159932288 745118487 413610304 809308661 219983584 203188383 523102192 501982996 25027743 133516219 32239867 286669949 117669583 676006025 32732735 651764749 784372011 942516454 724592008 903128674 131645350 654127142 93785628 810589159 40005168 699326990 223796410 118901903 517008691 899409997 414419208 458936054 674174947 448608161 3221263 948771531 709494005 10418367 724312940 688995634 127623230 641326183 833702899 388974566 70352096 516412974 976469109 584077456 3449394 697808019 131055798 919708473 593870644 419631275 196812166 838116674 181448726 468144797 404214716 750029199 315719837 394814166 118444427 689244443 79325193 359945759 251438851 103706626 229156941 370696715 549562406 419168129 108803773 199787182 747718580 213779250 427735160 108588100 212153464 132603577 425564069 180260525 6221017 167959822 834660299 128831855 175157654 932876737 990590732 720065818 510486263 141150048 73118681 21885131 514768919 512131214 833987508 409453075 266161841 789867257 10649883 557343437 955386856 22214635 585342794 442443096 988107218 898334983 496593680 36034142 716313464 450982511 244493190 650315414 960539202 713544598 110245212 552195175 592308328 352115597 190983596 418294381 371570761 995749772 733769712 669391297 154519285 122189235 814562981 388530419 951781768 248608110 87797590 704203207 513561283 123422264 26552414 646202661 326873643 699730577 651149058 334614206 981088088 550498815 49734447 464503972 844430576 888279178 518283514 177845312 778665679 556919622 398893349 373394079 757604915 827912008 382045505 686813327 356503449 551542156 797009591 72787153 860703749 323374749 160235132 661663822 990166397 23658919 237323954 333853308 510869699 932322842 62808231 818033798 832860358 512166720 817485075 415537520 224349991 90564859 347879836 698499319 5042644 839420532 204354206 921207446 75957551 991355628 144868886 612011550 697009539 504418733 926557107 861274596 12944493 319505314 670998576 902619737 543277861 456953488 220623495 82207910 490184362 149965169 919655417 665810042 27720445 71165957 972985440 902251074 631182413 792897036 441281411 217460818 571773448 402098736 831038913 459800278 469668300 792898992 163676696 436668593 27675834 495345703 45428416 117009767 369260012 852096399 844965446 341834651 873019994 712872067 843931044 109177207 529616435 861131701 457776174 223454763 240551563 912870058 607475478 401677788 127482453 803323060 392511256 412215513 945553298 8564369 9438408 328991633 263944820 938596346 871056867 830581259 192228110 836550540 763919284 850932923 741164503 485126789 85724535 211238070 309232743 817683496 770824511 672365127 789376694 193373983 549169996 671838147 750976982 164641480 409054795 921485477 276319157 592636371 500807600 527145246 175514326 376463635 274668087 244270503 196469708 361045561 895663552 672070385 975810795 250481464 840538955 325918983 303791176 135270624 419432467 937167189 281877155 126225844 213679135 115784422 930666824 898922430 853521046 367560993 491912888 826709961 456173198 804165616 860554290 67286110 59405467 835944180 719425785 398886095 415805996 914202555 193976187 247617528 867439282 27109580 917500039 65605000 451265018 273775809 44644204 93894926 404051604 652367200 812243012 358288772 510876053 667166837 209250342 995885401 712237166 13366619 73344498 580517281 879009702 813550512 718329911 621264935 243505492 614810847 442101248 296410424 217175555 733472576 720609202 250392237 23817972 844837287 500800252 526540291 882851849 482030618 192432825 383806206 137458879 90438620 463282634 154672580 848046163 443628420 86480896 88401158 917646238 363740547 991803199 747733391 815533770 154006371 673029363 235752482 990414352 582976859 791146033 987430967 356832952 17315904 105198496 809096343 333628047 497331797 173746201 155084202 175500111 737598090 648877049 674283233 61930616 615151161 151575545 917361471 666270206 583219502 441184566 120742154 368137934 65042056 801793942 192010189 68024828 446548868 493620957 713805578 655054322 13457005 500983655 137606439 182589312 276482423 373763935 923648786 977452405 746437750 102637342 36633871 370276209 854695965 901135334 133089510 168744753 654077359 200167343 851607667 867735294 214775630 569953588 175223958 480739593 146538803 104326598 620883500 69029609 852041685 164619498 588814885 752883346 88729716 790130943 289275337 617568618 152346775 601631125 726079390 497371618 688933676 91247599 734386870 808964938 836729001 557542310 73511745 295207316 632365857 837318456 966747779 628938797 13222082 483313028 209234575 223089807 985386066 968870677 748119518 986614571 376329038 207448868 935618110 85002996 923243924 932635890 767839345 907151020 927513094 433355843 43533993 531564107 47313526 736978328 18130376 890186801 11060640 919493487 372560536 210479229 820640985 203362606 834976199 905805448 679374250 575513857 705595732 824209236 292462196 368994398 155013404 312466016 117662745 873353673 11414780 812751804 379518784 727852877 773101886 268340116 747723396 148174086 764597740 472467225 879984526 476453968 946363669 227970523 959248444 295865436 336277202 846705110 988221145 104486107 125328227 595761262 247013470 355898035 428098870 178300500 509291012 586538535 869450778 146703664 154411709 644360880 362700885 420278839 190901383 200558909 633472817 265301441 132702020 376121263 55519126 909140952 626556432 320595299 991650061 783121917 700217204 274931926 590719771 265006213 822399668 441574820 238845335 623757910 596890338 779017285 899055140 549715426 656895924 843579040 696629888 351639644 560696215 826125891 935379627 863416918 260817349 73505484 896871016 485895237 38258169 559902586 687508277 897292066 614643581 936458066 86571238 753732410 348961837 233334249 972461960 809875601 753380339 204121419 829900552 105320962 172861529 886693265 893923816 820020215 687092041 172745618 884997710 471310357 560663592 740005574 723662345 637394312 247773890 459132493 683309043 68620961 818929891 953971038 557005614 355997557 912836023 949911204 711331104 548403857 903170846 197610719 281613905 109202574 286400991 285532356 894988735 843381515 236649512 20686954 705364642 158811746 621106699 151283624 690177510 363936987 514922049 705754013 48225765 33265373 466205150 487096853 630850333 598602062 843009492 813937504 90258023 434498441 72679090 745442740 578464294 301844434 31246386 159208541 58790820 217989728 432180401 719102127 827610251 559611497 981604987 644463228 263406507 749206954 124590707 241897317 668536494 423180254 650074701 141993961 397840164 978267757 548028962 594061802 210408984 890633425 541170417 323413349 659842180 64711024 3042776 654100713 274886763 315011409 451804791 670118131 530337766 779424274 458757213 449800063 148415791 593418511 866697689 567163782 261399926 794491594 953621255 440413441 622758303 950533646 827898230 223956150 933825292 748640130 976880573 281274817 135011915 205023871 960480734 962678749 5042450 616879086 457808134 533095712 374281312 568789558 506618715 519280669 366749855 242520030 510754423 731308493 253502514 250048106 449769810 666506118 709780254 483626607 504322629 344190791 803854095 918279357 934377068 88712786 245327047 509475652 956633565 615579254 790396678 254756568 614731769 179719681 589746852 593279903 638353068 685570705 737759826 656959446 968695808 122741251 428383871 413488837 985226557 124230896 409442353 242710107 224233003 812996547 284370149 717112901 756369843 443930472 691822879 532695215 923474623 528327886 754803963 500319612 707564434 589919989 879325971 792242798 545782639 556282275 559463433 346603476 224662356 720633935 109380907 470697931 624245913 650515399 526390889 653759615 722890204 100349492 819019778 310796677 30354298 140730119 548157658 638182373 143923483 839539405 261897859 955455410 505246973 662583206 805748830 270046630 673608187 71044523 288022286 39456401 760094337 665436839 222335231 546674350 583880936 628335316 570581744 793999930 837999958 223643350 628759177 894559156 29219036 384348205 608634813 841496964 128527454 771112740 462604527 707108811 805362365 886340304 333004819 31583464 421320959 825451672 77799745 705212613 355444483 10324782 772803916 668029880 56920022 530123797 104559115 352339689 226078521 323983507 959604749 280308475 501384017 766821426 533094252 653356615 443247531 866869738 472693964 312369333 310095879 22567311 202792505 295099240 905607007 591284359 200693420 312234292 145379324 467390323 682198778 498683993 824242308 718769424 811382641 275442906 128506285 702621779 294727764 868129744 803084261 813605802 691556948 850830642 357841550 667019785 84573296 925948548 589790642 878683181 588215852 408469157 766104159 883561635 529072810 185283810 971334400 753292339 220489193 571750524 299904543 411997631 26555776 881002970 867540112 334074741 519791723 326273666 768343307 92221024 593238002 175189963 37963106 91222094 512583647 274109299 844442010 5047359 981815449 746452111 931364278 66378966 106770934 624051990 289623133 216078742 229616334 672771001 174429195 127957230 512995715 555712052 677302714 855101355 229980506 12537976 665546213 912757820 22923203 826449886 419841284 685291483 754926842 152470381 105628510 341620859 907921319 138293280 721293695 353958998 536075242 835322389 641635543 875130578 674977196 435170534 19880969 288987300 284130184 152824074 44852099 581954618 153947038 739219893 391199209 603367816 456032331 311195548 371301491 722650379 16879805 93618848 89660572 13150953 625002012 106111634 512609575 582126679 112644800 128639038 180826132 45738743 67493915 880004781 460744168 732061466 331697842 805058913 208853213 493229926 476337369 872980601 181829619 288068847 768523448 478762671 646931857 730385287 605888454 635394060 888523442 795558315 86533885 948588164 173020540 109522927 108868292 630217591 75632397 397189741 732078755 446825711 674511582 595836819 245357800 349132725 141146497 294762564 2836785 262183776 761229643 665395507 459061628 232461551 762753149 688554667 459445275 282297216 876993059 320250820 400312330 193070381 778751268 51021285 937433584 746910821 603164597 632030627 412719328 129575838 363447451 763737480 105564626 501078603 944573010 891374994 881602297 588511868 12073841 655358408 203073912 120581286 627927536 337647001 301867968 687572260 602604902 715432240 801417393 281738685 601758585 827711767 120191037 824918773 782012865 540964316 965488869 528960083 375369846 636565119 51165518 354377324 442302891 334806209 213693244 83816125 903333385 701272330 451292942 561842334 626745485 890249353 168378789 2657053 15053413 550796430 114625479 187514529 311536191 977115519 985612768 990131115 86214312 573549593 487374264 158300522 475755368 122646691 280080126 107017806 673939600 244346284 68664383 53775337 481937137 672661772 667505058 575991352 476968370 20630786 725822537 644724793 590463770 721577686 612077572 948416242 454093711 510197198 937348245 455341561 874307846 945168765 506899537 162720687 743007202 754175377 84269206 341480208 50016019 693128854 105560326 137288547 725527254 235085309 415303825 621803105 704734005 449421189 438206572 551512837 279322463 127654025 181352518 194890564 336995135 139313032 15753347 338737516 937644373 889565043 963415072 689458788 945616425 960396320 102959823 571231395 425549708 358868585 760830283 132010056 32404199 764225561 451209688 935768358 868972967 138450188 357907883 491413487 996953971 56039259 658416048 38637410 888406369 772063644 795202761 852294847 435785142 900118141 360989179 536029415 668118922 224677015 253397206 569128153 902513219 219427776 436947917 126555286 996472786 699561485 141483549 409798304 247961436 517983355 767173280 388346883 603368283 506454716 922135522 175270653 183826476 847940142 961657935 3563094 568687106 880818416 931187228 523857079 875358536 691222838 972186270 111387593 394143437 150643349 765365544 255792105 464351608 369352234 999993757 653068226 363611753 566911897 972797189 504242610 698315369 760872647 865383317 150038937 540992458 744489574 843762976 433078339 390152626 156053002 72937922 976574127 390334708 924684761 260556425 722738852 371601242 443409250 401361115 131131878 298556674 106265170 731523816 272273669 885462525 985104248 92833667 636030297 714107155 142451827 758555984 516423677 397695354 557569896 693347900 533429088 565508082 413745150 627043585 985534854 113263149 860417054 985296583 714927796 300768630 380965719 701538987 491659639 553726939 489290083 137850206 229923220 593058572 953891378 322771737 765991627 785748551 487154821 929379234 136696385 289545642 820011434 908299009 123957649 790709359 105754852 799020420 615461459 646317250 119197557 388874192 47670289 985437765 302119676 736727491 802336728 524055255 789374390 766852987 921922038 424193975 330567394 338655393 312454953 769237786 974905316 732685662 294163016 24479192 775271321 432259138 906902973 900667046 76496355 261470611 656515118 60603238 288801001 354434408 500493766 74458438 486025165 592140918 721975538 188003772 939099993 899091163 264388699 320055569 704618631 696969553 530864448 795590421 526453452 409125076 587929142 716707036 514158770 171644716 128938214 552656880 178843502 147078751 498383251 13603413 293642783 17511384 897463607 730132663 453013926 915933519 617744406 226507264 753230950 352922322 635880092 840659886 704894907 862159401 244000247 875131538 96663451 403019729 691641706 260479253 884108287 324989485 326710194 171210678 249278673 88050075 388048638 459024112 931125866 137344781 156503096 434837695 3987241 804927304 597743414 224579806 545792861 107389672 593737433 221030211 94488539 347308644 941321096 869647917 351279388 627891620 464374654 274769743 604459664 15183472 280640846 373853667 577094059 350579531 603601671 799219979 398019777 68404303 42809154 921428810 991855866 320794111 368195 272421998 573541680 185075337 5114929 47770365 108671259 758325874 522749019 478915936 679661210 884958828 570331262 120814950 30615394 698181736 818124390 868513648 370399363 56629915 188852495 186696494 169295816 318836286 703980545 46093183 83834760 357634274 223455118 35355054 437215931 583413947 684978793 646996443 424238877 381549076 590613681 963824498 353814419 889109978 17097334 119334085 74353456 968652905 565180954 811286443 727929473 820315154 78324545 569521029 696533590 242598103 219393959 123181434 461597744 210361476 959005451 485997605 902376625 14775455 639252921 496130486 452144775 600589637 700701690 770101012 681250003 85075695 502649728 201570095 250218708 524964007 789177834 584926585 552092190 28775267 658832128 444880240 107263505 110065942 452459889 916356664 933858823 711820042 306790320 963809171 488834790 119507140 29798539 530686329 545790514 627612001 79486716 684023894 178640877 905850673 106211027 327427866 300800588 502916075 709271125 666938832 82187853 437209177 704213379 234647904 635594671 656107475 972768286 796907137 374507708 526051507 294859442 826349273 608464320 841418245 692754994 170840158 68762681 153645567 64303475 310244342 3284501 856221698 921163653 144209508 130643916 860531407 913045463 79317739 835436353 378763607 478763904 453423765 831263732 54708980 453353167 154315055 87138463 993821013 180902016 290507021 268998672 585990382 539926979 219786932 276948291 743613781 159515263 286192466 194247853 692860341 744587637 891133934 362008741 228139481 17996563 366976978 735789145 984657082 777412189 747235253 425519511 555031977 292912117 428747062 263356911 589983097 861877186 777893744 135530822 282286706 630739266 800311033 85526005 974407753 300706307 761197262 356847617 471473420 25060319 799194239 787068110 567810077 507740381 894779577 693718809 316379415 97301023 141862172 146996106 809883577 523991423 987522715 352053345 866596520 995831911 851602170 818128839 284562766 491114964 561929790 548027293 973562279 417899098 938267950 304343768 187552564 97020197 960661364 351230434 227857132 433179668 559857946 967953058 269814246 592363458 900476451 493852194 372523988 779648547 945507571 851663324 967777479 242908024 506372567 176715848 453366973 944709946 946236122 901667646 735447712 753461932 227377263 702441104 493118318 206071354 510852067 10194049 964184678 715083863 153082086 898693988 547201705 285169144 538047472 353249564 721953268 32610194 976932755 935235560 66702358 528413495 913826459 387832126 79232651 74542238 263064990 583212679 717381634 968324991 323327736 285231689 689141126 172115193 97739084 172855768 398938151 695072646 563890082 64938585 8384604 373725084 339555856 716155893 571483496 754046825 944307330 582729690 19246540 63551042 587610157 529603247 867749655 564232923 673970492 341208763 879207476 661425510 100432671 472183224 674984510 244730144 878568047 106157376 928119203 527467779 793229908 858144445 898025249 891224608 495520381 180954285 823978832 432654290 43405908 598094734 944937643 10417482 544568825 535284216 146150572 447980953 386994194 126755424 29909902 933691767 78167848 176134973 830462218 323606999 544303330 426819896 310124873 826109843 892884936 453998268 522824901 6635763 993357569 992732436 186614750 692363311 88300440 220289316 46027375 111373612 636034522 96212885 759559838 406906827 439485154 723555755 730687675 101941715 330073680 590273749 978912080 763170450 573149551 701002568 44698583 34900782 318169460 930806837 96224362 881009820 839248951 259861591 195189976 583886361 139785051 304394757 799348392 662699320 264681324 954337786 830386735 715283403 707917305 210643860 2963460 459137420 358491169 604362947 543794882 207344652 667026374 853396331 982681791 982411302 2670480 339732216 868048320 529943708 770253704 834197094 248173220 291392340 129484993 603630093 459176158 100841207 824412113 266341040 455120184 352787004 912391738 98819373 578607498 562275668 859307727 450407318 643940009 172716831 516077825 630255055 973826908 121887695 112810009 854286470 706806900 902775299 578011338 529208537 762503866 774881391 804440879 300708231 307761237 993002258 793138003 991819568 91983974 356687786 243298107 863947824 422241430 164131026 170195987 674441508 752635213 421073469 362894223 885110871 141832397 298865020 158281553 157522005 28877760 367151957 101022856 464650718 131824993 967395726 32996412 967274810 571164341 908734153 536403260 923186088 380866105 600080796 966304073 739117078 824453175 597136639 432309881 216596672 719270018 933524723 582087260 843802573 757993845 66214214 82125507 175412424 123972868 604566564 738580448 489859992 458673296 415164289 80582529 756683526 867384200 931098927 233388534 444298124 842517276 739337149 528717556 326536375 104432919 979493872 384204354 113135503 494596983 50823825 656550449 67963033 748803432 422387264 391050842 948895822 792419185 403593922 849187432 687125702 242595539 485066917 939967772 618424555 775647317 985549985 265263464 992492210 569524693 69317590 869929180 540617870 714923265 495453302 706982344 173651022 534022653 403730439 863594951 313470172 79772051 438297356 642012447 303528592 498692636 739474728 439163419 119609784 922795067 141138063 738810865 853020666 444579894 574563201 449783154 692223577 636904077 781595870 864147718 573789488 618561864 306996675 329456304 848536973 712804408 375178167 738095173 29727376 81391636 107932766 777921182 136568174 823510525 648952527 670560931 319504566 268189654 145360905 719030549 157941650 668312505 882655652 118732088 165690793 920577394 606517923 177482324 897763612 744599410 383816302 872645668 831098824 920794601 830881241 366961080 624879117 371428406 4263805 731619435 686842213 34599895 694565210 826370853 210582115 672262010 265812648 661619007 585861543 319385469 902030678 123315222 79821531 960103542 859007995 233718161 884276365 360923120 781073251 936923811 7978873 264628576 190173943 74819420 823170631 397657399 8012863 841020434 797766509 217786238 978950543 626590245 79227000 382947826 231837715 531095782 49162811 656069087 649919226 453727 526810280 209463291 105460476 556387861 557075708 960282371 48983696 3201239 441898652 474412529 355009798 38463948 418674564 774251489 655717148 58098512 559180314 635099364 362573314 397554294 886497403 806375820 143523983 915598021 795631493 126838957 662276807 138844798 939548485 529983672 702465677 785195037 149133902 181086105 664477869 404125442 470992979 605640826 243292900 490349290 849856166 384467531 33517119 900455616 806000979 315633565 570102367 792053391 777947712 440157492 130907995 932270359 300144304 839166354 505807740 218057429 663027802 349906739 598220639 293412877 546419277 239342729 369751537 364963500 573646517 156586665 537631540 172020696 854562865 439351433 111158189 534097375 942296505 311581568 10321554 377472893 926176183 89259135 967260943 37216270 739863359 709490684 754648321 100053580 856005710 425072528 691330364 268529834 514506137 418306503 348176746 929178997 586396766 37526538 52614870 220199334 964829686 816270473 195501830 420548044 618186268 493982079 326863992 494779616 136655629 397710337 963616018 789637831 926553777 177569150 263566327 516278775 795234739 543717026 389142107 345590621 816081605 464814763 994371648 598641010 73035908 159702190 522053644 145370810 245408171 954525276 444475668 116362099 85658639 266160446 408485833 579571769 500211629 292814190 322754955 546704111 271033466 197646110 893404050 3162841 940706526 979569784 669455175 702518411 807807048 589349812 158418043 869982556 882820477 377401449 270996411 3354382 191856321 609085166 510658598 620476429 775554763 190055096 317232105 177643216 561047397 521724938 938119932 143256226 39018505 942700253 284744261 261629514 835264618 585102189 575750556 954019905 227011465 221908793 779567607 407684995 934602548 399392180 819243431 368416028 439158395 775800390 88138652 920717403 314759415 402775125 889081828 201233973 454904619 912788971 141925980 557665762 876347999 417569802 603744202 254130473 818563315 653821221 255811507 576680376 48140432 904016290 65216726 736137723 654763081 126079585 120635049 695168678 188271319 505502622 536244719 456086883 697701036 81633057 736189669 133337576 601908140 698816166 211236918 955147919 264140157 462074279 979034367 664160050 28333561 123259417 620630076 58618562 381221108 871598227 675156871 492142471 240149891 161161995 309645995 224827893 995331132 687730309 417397707 296111834 631988189 539325900 698630067 672669774 803686126 546776163 555852841 747380902 718737701 679661649 35308700 756627354 143816953 763643196 195006757 308459756 203978008 631257154 330489565 405574959 65014523 828408044 47062305 903041554 246481418 434938076 691975431 519214743 817068057 852770590 38562795 158844756 315011648 110671391 944587275 525492414 668114898 198889215 12683730 113556674 964750795 452350327 702153387 627359951 382314688 423663749 398338814 207726832 722480461 687799757 661050173 693765577 143381504 262349264 69844430 904826770 825642746 216672549 840058004 137967174 517477650 443031018 97897130 24057229 708310062 125314313 601719384 108380509 497243083 130429928 853716707 179835891 876390867 271337325 281788655 486770122 292464226 718586725 771662533 616679375 134669102 772476614 343631020 818854966 530696676 511468456 331833929 811488025 907153766 778089874 826409961 413497080 69633498 964246274 554062312 460502197 490102928 824415953 239010522 865674376 300333196 175560390 993910153 690659107 203088485 903492872 110927857 751966464 880386842 20762976 714337733 407527949 654417485 229001319 436837454 204567475 833051550 142732219 762954204 444381323 970692433 380675364 355088799 736169203 270923489 258411867 688249913 294713723 644530468 398502904 585188895 982388231 103103360 953698695 146633390 18413489 338671355 973848856 456162468 269020023 833891722 374174539 289520025 346166624 168733200 824753033 726220361 83464365 316855013 567766116 463039835 459872148 362896935 851763283 549163191 187039290 201436374 353594480 488123288 111492236 496674137 430776352 652581277 979057017 10082772 250861227 918626860 174324138 546675572 902435234 948694690 334677503 852282146 447324666 495647079 846793656 101000598 606246806 542933158 89589408 315617048 928802823 103702715 487594443 936936935 593486860 746396337 192569375 203229487 587870701 456626663 267423964 680888180 973447771 983314487 73919249 813152503 753114812 41911273 962084673 119437452 406090071 495986346 60750978 306102655 254514907 612767685 460160342 706413210 570742432 370289246 765897845 174305207 871584294 5773249 412261940 393497140 878241107 892941932 300678055 903468425 898271861 465562042 770834385 834013656 559616470 363984092 763287602 6724180 880476101 284233788 18162836 247282830 873660009 849062146 22250753 811817565 633168693 745885634 553637776 147450687 929203834 568475027 106148405 495652121 799459924 160572560 872184577 432188852 739055372 548514148 542580563 789852588 911470783 898126498 780897967 501832645 144812763 799804740 486248508 942728281 643318730 238833898 692274722 560411662 579428133 195409885 413233757 404024732 774384161 528237317 448619191 192256306 343922570 401199687 516021928 856472877 634964749 668443317 194635892 185620066 972634206 53222823 524910945 444576401 342612443 697716393 121142886 413379503 195463330 607826165 666099870 58121029 135151139 900747678 692064376 436256048 735344631 488184933 370370596 826428595 581894051 945324770 833298698 43849585 110951649 266762434 97818751 614836565 328374989 151156630 521611272 144834374 471414912 147922175 894548966 468981833 891473464 114534647 62115049 469781607 353674064 699930413 48320065 617945322 31223335 4008559 228956459 428033695 269120802 85023215 391298876 471779290 126592501 378396336 76322251 980640969 765981542 735334072 692769129 220950270 647293838 544079630 916607498 156467680 208072427 656655924 945365481 865220069 43761711 559352459 767729586 317462139 893873128 682992390 112472408 731716861 794704747 177640739 795643412 309914649 713497506 364261469 340063140 174110236 786561266 626143082 663400717 464885602 417823079 832195161 222170847 630610413 289945161 462752193 814102390 921257482 93840024 703132005 759551195 561292870 999969543 80871703 13878048 213647158 866408394 954331396 503913820 889737389 108031092 829695306 487466768 643812338 77684079 549346598 941210435 137388312 814605065 33601164 499675293 891191174 511871828 87619098 349822266 808691638 431318803 367721311 354932631 781588147 745097036 69512554 799932570 253524303 879122784 364221991 218899588 647352201 699360823 554492468 295192906 520026065 652110230 384007144 607343453 784169483 565665969 151059978 336511261 260339001 502115608 483127177 896773873 945042195 206391324 975792678 840511205 752022168 631150677 934778885 793954363 255638069 629370418 859211962 509796729 490740425 485297260 107072852 687557002 933634603 368764094 342626386 879398061 298238119 254729377 20760187 834995262 219663801 769825463 392608560 514481488 505818687 980741549 790713697 592357361 871795248 304617670 933086624 524373365 49781378 634759446 590973149 650638794 746192379 893223166 834759762 678340782 811781155 38987058 725824767 157145989 112449336 206347420 670931476 448449909 759172662 34188409 202440770 644954769 858523729 492755895 730093803 475288011 161334967 525374593 210446493 410737173 112383010 699216962 298670372 723620718 867036625 821209537 509297671 177124961 320050407 837020888 754555371 595829964 16856738 516917248 123513257 167325745 425189601 666572659 414690343 422295084 54305030 910018001 559616545 411129570 487217706 263705028 528671933 560966339 288817490 737525184 492694147 722117337 38698525 27282975 197291001 800218836 943042956 304783847 691593026 954437944 159730501 81951030 588492975 645498870 998223826 634756740 524886401 522860141 172557019 383784671 926004968 443827058 209749155 94365957 965389053 565142042 669153614 569826863 882130405 72856702 954846458 275498072 169833283 754363319 915164400 194748524 964281941 968861276 52096232 635681419 346330628 931108173 56188508 664769394 889219961 286029000 813914055 145313119 298076326 607577594 354045940 913038341 168036371 136000945 866451435 245300975 787950013 620085273 201218075 319031035 405673186 274804507 59185123 514855050 933448074 707067265 763360808 47707539 594782418 605311417 438620816 355341621 741429868 950852457 974507723 830479024 660597158 423159063 699302962 952749009 618349572 876568052 779201992 843238469 118691201 767791422 990375236 143854205 84506392 460356270 589385814 862049322 803269937 382399766 72515419 599767734 921091962 993018281 841874420 133409083 707589825 919473513 83278247 138476302 746378388 735367612 129575424 428242314 148851966 314596500 801243615 913038638 961585969 847297069 101475309 149371739 180016109 930410322 448859965 666365761 790017831 73651546 807609207 343266752 142563122 767136966 798885884 418584219 140964251 771948106 148293067 376084785 291237456 325189511 551162841 357958143 785858951 652595029 57453783 503322987 527128427 152158607 92452675 975663375 724335791 56416132 18022409 611591366 732835386 356638924 288323754 812922337 133757326 612428236 451726322 977028398 49447493 604653601 266262317 735375351 337916911 100374236 146702096 943288769 71230629 85642999 295851787 90786052 35826192 550427434 21878813 774183132 758869499 373950841 662445810 663228593 704691967 172908327 250786813 679243441 694328909 1302881 957402472 218936470 723758928 776737450 23722411 857313102 21739581 359848232 16691063 719450057 434465117 289949892 579196365 900646480 382110828 982361622 803897821 321376532 658538136 160131487 606902604 260707217 223868708 525381592 639307534 166199076 478770295 238776848 546528711 231784059 402397432 248012363 169996759 652233584 766868158 224439728 591011169 37823157 518787057 270946461 840601719 767927687 376398382 259237201 848982451 152151066 669736535 444973822 414248759 832613958 435230617 853439194 393225658 869472529 323119156 242355443 180084683 380580162 139000597 362380887 850709997 950569678 964098340 290415348 514171025 806302775 421169999 99517731 506105268 383068188 238031900 140149739 922577468 248240530 456358501 64500056 578043585 856054508 547630734 542273812 711805716 148884042 987619478 153391107 730118572 657559693 911833708 681931250 410198753 110569328 943654993 929758336 16265609 12017494 328129862 361153385 870589112 470101120 674676944 323670874 695895843 688076201 858464483 420156952 807695542 774492214 746672441 321793793 728220361 278808996 524977827 874345739 97175600 230778089 864813122 47420241 622928521 736910382 499705966 489553184 578205526 577236687 798390605 638268145 39190638 655376649 983629263 872303046 755974545 999129527 710236391 91798651 594706907 495073147 280462635 990466766 574237841 175180205 800667556 896279148 500944115 396741232 774905390 394267021 695280058 818593660 143595716 468158713 361466521 969222280 141771722 758030342 198580523 95882647 655085224 131149124 248269286 48983998 665140976 419122982 338791531 132374118 451356807 32955610 859570849 13086734 732867432 109895899 631346428 499021138 843270293 3614948 618267860 112243293 611197495 691819698 192293475 456332709 256953406 526606570 138106476 616618272 142846953 845928808 749568036 736125149 966974137 880158220 145576813 640114935 675337928 471949159 496416592 12906603 999338259 328622257 429696714 76958017 101487650 499326620 949430439 168522523 715551039 649736407 344830778 482450935 951459925 502678679 718707999 775940353 959164555 566946484 38002971 593725076 235840342 265375618 365169502 11555474 662662455 735298482 205489435 666014997 954913853 392620030 897466964 987569646 810130716 533601191 492218220 176864325 705549730 320690953 775330731 928777916 380151460 297345238 639936382 101872 663837086 500819406 902851052 131689362 472501492 552091482 188361429 585817134 7767487 772121799 691789933 102917835 158835362 822503685 294590973 672772625 448591787 297489442 569379030 840150470 528616898 485967178 170230234 843569872 447671813 627152304 312416187 277198912 902130927 175236246 308263535 324580839 436555505 786445177 49864892 497781160 22245004 516034649 501706485 335662866 57233249 559890865 62970554 55369010 979225942 738078893 535605713 678652131 247725884 932633708 56805996 308583533 980915054 632060598 618315491 369927967 828442057 609115954 121279375 747250039 49770471 259035987 685846016 588144310 139667457 314539102 471651164 386954988 495252318 926219626 23135584 976166853 394709550 211560519 803917679 455690109 773947373 617797093 122495959 773365603 333019710 77096042 394857359 609400556 834772755 409467172 50464244 572314368 957291531 634064196 427083617 774846513 131950082 605457349 618162813 796293216 351963283 452340609 94888903 541529211 419997148 209489698 914044949 623983208 203046010 383407587 148673106 775230457 778677915 921254435 401718082 796997369 219456380 71318323 312744710 494999656 518696426 979431880 574421918 399863256 215865982 881412930 353711143 91383021 709093692 807650853 353287306 104216909 326059076 386142392 825898618 948364648 370645944 364447856 402368512 947398356 959188192 147602410 15533869 476962376 57073935 528399000 867114464 215955167 871328453 456697815 186164353 809746258 237837648 682881766 764522482 532568545 625876313 586049082 398528148 789721275 883442501 966392293 883871244 284965519 900417245 857123301 11124900 154256371 206538191 892739760 907698634 821401245 397740366 908431294 933554500 972660644 198637178 908634845 953935944 639987507 165074227 553219516 348374893 983796643 242318622 360081162 979281356 125052789 548375817 598794754 362901553 739036604 537795324 422973601 215599311 756312712 906871236 602740064 286820488 566509389 292873639 77232448 660940748 818627812 113545072 760463878 611307336 410421764 620799679 997355475 31338766 136377510 426416423 817338339 42948886 11979930 166227804 974602597 575781641 857772939 327654818 28442975 958978821 631225015 265984336 544051851 234231960 717807911 735724899 481865438 536702383 231969833 154036237 821534839 648942997 40040000 558473028 649739008 357481362 633814642 343192251 193313649 499750682 558681482 225997745 576033013 376501518 109774886 900416630 672610111 185291891 732626106 401411195 576682278 768540839 68079394 935242076 524072682 767530061 593740077 291372695 477850665 358612050 804825169 111261412 453201841 554037988 421442264 977323374 958173895 366315888 839148303 633007161 194095682 28985943 672891783 944264205 838493611 240677913 947784652 1473352 418593566 503340592 684821374 217266465 165587504 429524337 466309312 207829258 464600220 776589878 706734759 270696588 950609543 26107480 539021376 113617597 879436185 132397411 852325777 179755515 560294761 297528217 594679793 973081008 242249659 336423031 658983312 356299177 786235334 404588320 454850222 144970900 190962268 992668205 661412992 445320059 920928124 166008715 389192992 219800415 260037197 667434070 874824209 161908713 878048211 384270838 590416550 189048942 683604960 897007127 14277351 741747568 515054671 782760953 245600748 831554524 753766517 484005101 859643824 985744 496734120 152905234 892162411 108038449 114764424 66513530 22710068 870212581 605280285 231723084 260524147 997816977 936676553 321427491 307581839 637862940 79638684 790292917 432104019 906899155 544170358 394029738 236697941 307481869 873807317 414746497 839797133 272321578 767494030 51001537 859090525 776405374 503849838 307993957 397126217 637938635 702862292 745364733 980031453 374722804 166520672 194671788 963088747 111829726 434057788 50272631 792925026 181062358 273906308 760041649 64816087 204656273 911390202 713021473 300364125 44882210 847334651 669400044 847942725 206905811 232938480 178446346 739706049 505228172 857241899 934573969 68328346 547020277 841962298 84703943 190890616 218404766 104924203 370077532 186027943 425223914 936862380 979780790 621526880 854689643 251319143 120117663 753437610 295110383 900356143 306537340 830825034 942451851 260598131 128711521 400476678 382840281 923422856 490686548 139213172 992753335 816271955 81037707 45230254 572560301 152291098 696565391 605875784 650076846 579850365 998117602 135895805 97318605 249601517 213244533 924954865 824983708 527420264 57631198 214469451 247358235 277168395 851401182 806346254 468373796 925010755 66412781 996182777 716679287 119733441 571002800 917586371 744553423 402222685 875452971 934457627 703192673 483483822 688869844 260297886 744838036 332746598 3561250 56535447 264378867 374333452 781672456 408950015 557169322 855381228 110405843 611649903 56211376 304014712 997825505 48435469 198721335 779545448 539840969 994847090 106398762 995216686 140351914 863164979 167045466 604917823 99327957 128305288 446095355 411489782 49128406 587135023 18323938 583863200 674634012 963813712 803134654 464950548 760629080 47447121 328239053 925174155 867055483 552912928 527192851 43403888 58320675 521140659 192558391 161458262 585901892 438902971 807597888 842747912 319818368 347991570 667798943 446061457 556143105 618601086 642779062 969769383 333919119 106971982 715197935 290335860 198690177 801963683 356788408 909971767 127558594 984201792 301965750 141893531 558286922 993844518 819418517 438466198 403464079 133441619 97624748 620702157 702908507 684514458 917076331 840690193 653650563 13723967 646769409 727747700 35807619 860970488 455640903 62578549 985725365 308272488 403955294 790508246 473467980 602347182 100390732 433437793 466148375 552726351 543980334 81827626 542551032 536963337 722553022 429081516 970746800 639386378 636757644 927951243 551240818 351610600 578600196 682004264 171632960 425497332 168936826 455186243 73314840 171309271 803793902 295671340 12271725 679810695 353792409 707865445 790792604 643520717 339703144 722820158 149393612 696038935 66123264 626161270 916866705 9147316 280459302 762346682 659215749 798021502 569703599 15242357 344450334 271753272 880661875 661007506 557726883 183908388 796936544 808209799 912461506 490028028 84843902 564655125 47873655 259342928 618728807 162224979 829658539 278771328 726662349 207849310 478428518 620581811 843352794 28454083 228071343 264325695 924806848 480342341 768372312 472631004 982586148 74050165 226160712 856119343 143343936 198964446 195361752 648705337 677649444 366266048 759603136 693647363 258533000 825165098 85321986 328378354 341101326 904286736 941302880 830857392 750373352 972466889 933733270 404158979 405038522 691383559 508971741 342244955 693376263 266104365 734645102 566179337 562599048 623641172 320717810 622201835 730975550 717657217 155608032 270390878 560546228 988236068 554644808 48782017 839971261 84422810 774613381 751490105 926324106 65721144 332891127 827109653 481189380 738422258 87592710 41436501 561426001 500480594 304474579 769913216 196097480 783361670 775194324 24346480 402273508 299270675 707914733 29568960 516409966 393414571 887230560 481749685 710207572 458210655 551598600 485435124 419988486 711739188 459436008 193476143 215586998 338535879 226364375 193338077 846100534 730772426 754588751 737928049 830193045 246564898 863027069 582456392 618073742 510251781 392945251 216034090 795237298 917575413 237164604 295238712 742434951 176181764 647620263 60284557 979000479 795319787 9160624 661807318 609745493 637505656 885504383 320244065 698615517 211035660 767753689 302747044 514214856 424318750 279226996 601268224 770661659 628835918 398110175 551876895 120879608 780284940 907532471 902556736 164023471 337485747 179000770 466165814 116552535 868019613 456013962 19809989 246412513 838272560 157759201 528496048 513763323 309749999 411952832 101432592 912696688 661306719 630322054 316502212 309630370 899454227 470392338 941302029 155867590 292554809 166453506 45287810 129389084 571505538 179128202 235125801 59851068 37380440 602683653 180508750 70258863 856789238 577059573 782529705 259958960 720606556 334265341 89959593 480738343 381959766 156381736 435477385 96879798 465219719 902437739 789742107 936847229 754241051 936896266 16544268 369839327 28103126 750570255 894902756 39160218 745350052 359463512 108499097 737046459 767547053 477129778 770976821 243266860 769324005 886683067 356515845 975938214 574307094 663267711 439388308 499023199 781394343 982312885 342222473 246589369 652003263 131292134 278703609 216021689 515305173 275820019 602522445 681906487 831916685 380725198 321500804 971002253 433999064 269988030 895983596 908172479 573855182 833870142 226082923 834695529 806689890 923320059 486169189 598530309 808697505 479413223 496527459 690411506 378032729 309102406 367991820 967671876 377841522 431196622 332011161 26471971 458212406 62878871 262394549 756574714 810387714 120044060 175254624 178432014 599489215 764715582 434182008 146716469 627109671 865888570 695438650 727009307 100920777 280487681 577344496 270646329 677000222 505660801 316303885 293126434 120711180 963109267 297323806 991470759 812017623 818393154 985797014 149863578 2348617 742638753 81783916 834848914 265015031 335968276 634701806 378957441 75437530 287434302 585472546 934632968 344714506 10376287 2853132 749797028 20503023 951953047 986333002 565655093 828980726 677884003 648371649 839025671 452042047 805360265 76681049 585879793 665503654 751312793 928371224 817728057 284435254 949609773 45885613 847900449 813664883 373215605 223055952 781285083 207694748 307098463 681899274 165472170 104807838 324487268 26186953 207828935 985628770 872507071 654614807 664425125 178526697 463057430 699574464 235250916 684883042 660625620 588051477 501863342 148949467 170040539 137838862 314425014 836027279 846933696 272658014 26855280 571928686 723424774 75113155 523317387 85830895 397112256 778323931 969400451 211828313 130991501 65397570 604537503 551188318 346146885 415541141 424075263 999282093 689917715 367475869 716569174 301091645 564473555 196518806 742698701 733190717 579471044 645877161 314021490 137548478 849304380 18614455 801741321 552110509 892504473 306190727 853208857 281432708 340428398 65344069 663123428 48973819 35284322 378705925 62444804 302286633 3410056 127481378 889572294 226707921 538208824 240823609 452164415 18513854 809954777 800092863 411504054 41821432 838373122 588316263 761090770 32770062 322864059 643376933 659235616 753074981 148056835 821309877 672476129 839736424 526801472 388736150 838867311 781292879 984367895 291609080 704886106 568529839 386574359 626306195 704440668 279793733 87464814 291714145 599239428 470181814 448329129 327149621 691764559 791738949 314815007 462850047 931173428 556705508 475354628 998289622 831159801 817344846 842657604 858814622 342679952 420726811 241383781 432343555 231694443 100751963 436937760 992023899 765799997 761346529 43812720 702393962 572492945 323064394 573103521 356708749 382631117 100365408 62180099 210536703 28069586 550395980 3200111 440766795 560302699 958186872 654469939 38568000 216588214 286066610 116424799 350659399 305949388 890600621 524098859 191416093 695859502 233150929 982898638 549014442 673214155 967254518 541801816 446376711 539857465 573752192 525825762 901122525 645448336 633326066 8376146 311548582 415892664 469825386 941426908 627164488 262310203 235493753 773030919 858516521 186315230 968291938 655420616 158668897 293001 454479530 591862357 610705138 222283422 468522567 68904440 169027236 968140974 946367158 306543479 989635622 418835794 948519665 764807344 628083005 665916549 475153363 480655734 6495169 751435026 324006746 4634060 980438989 273327205 171019488 654393470 643859745 547697818 557683096 462975295 621891628 872111050 412464796 475077102 800823836 867704642 844973255 536094423 547070766 868320929 288120026 5972976 52287353 440247405 599851461 697610492 325730772 70407321 582403220 155651003 454054583 300856765 61355335 33190273 53664790 72704496 18424221 17959036 654799985 671374619 867382849 831646483 611676056 328741161 177018146 773294615 603987568 510158942 123110164 414470528 836222500 561823289 892967532 63386166 602695970 113782180 520547487 345190669 267796406 442276589 669810702 44093686 929560033 842964298 981606047 738916121 815947070 526577477 120809461 111861074 644454369 354224698 501765615 40361380 351874133 313129976 708721303 889592846 554064699 619125061 297653597 453003823 117443229 200219564 307636092 451524391 321745222 907418155 318830771 48102868 586710214 421489912 696134852 236385389 95591474 580196431 694908511 307459786 171957738 290405866 102674145 190876964 615943834 480178635 947357208 974192176 282705678 137455306 361265505 592562759 440404833 795481970 397713226 49754417 786136817 554088401 880611355 375954420 529443209 664107670 481729304 859799273 466945058 168433194 350775419 191463374 460213156 7047569 910440770 640867514 197197190 521273338 304789920 141682266 781330599 473810141 834660120 581075588 640580065 871140609 90408941 951564508 888520539 293262398 707076334 136124829 289033327 364842455 240909421 993134110 685244705 728482605 691302651 573112786 30669558 4971398 370720609 76068448 892418683 890968114 852085518 101797024 89620208 615018712 411541844 25323701 861392998 927384809 243663548 359996475 802218680 191649700 715120362 176210577 539029765 292295025 744383105 10452417 891205598 44169420 361919086 510360821 511630187 855672738 475112226 252156273 998905327 349225947 302923064 644984090 914291399 189105926 946123908 338920075 222468341 801116006 66099411 514652714 976599649 880334308 889184284 954393878 459987813 604244828 381775500 857102005 62911341 519738872 25696026 274787839 798315533 998314830 22966818 577779402 57379474 946066704 198711192 957172014 34529235 623871518 603197668 134628304 432909518 513529118 638139114 171512470 321133139 639250042 386705995 880271496 108672613 984515550 87180908 586260555 449850377 726011306 155226684 816037913 264872892 683149333 591880953 208272868 480623453 571617999 337057214 797115999 464002351 662551699 21703662 101206752 872188436 127188725 46759502 666992462 461124483 667655795 546504855 336194296 456517134 979295006 411635863 916595559 48751029 861694173 45154806 892179507 161705369 295197665 322788790 837448818 143151750 244230161 885007763 280561464 927909552 261744241 199174679 319738699 481955348 128494567 137913792 138041011 464759394 290978149 147860225 164051660 123222786 592449125 842031838 309980037 392489593 929156921 159643494 808413050 171422943 561374771 533530880 975928717 803958619 863398586 637706058 195025398 90545074 344126478 136416246 253594267 56449440 726919234 895970206 690379502 172382345 7430465 429285047 816221026 43112578 80114128 808097036 405779338 893565818 565048383 785622490 885384828 651557383 28249601 752265273 325093589 594772266 330599838 779167958 686641834 562330574 244781080 649543870 299141173 258787181 516084323 395689814 522625861 837104004 361873859 796603098 979195116 136480738 471512311 74424502 17414647 623158041 980963028 198650871 257841498 923815330 726827215 264570627 430006912 57572457 63596600 17695494 590287319 713374048 592703773 875792967 210866338 537370571 328320099 549162469 835475958 563483496 194840603 465171964 291810065 606565215 363698457 491002809 570010966 639211225 722639821 25697964 446218689 592797539 57290688 833463884 951281449 387929724 362126944 632313665 154153003 555237352 918650886 803115907 938660443 894061414 722504415 94268603 788051173 463144786 959105850 840998316 645026696 453465885 59019726 754960296 168237106 133530253 623952151 928179777 722548863 584612020 372817607 170129575 49365218 483421586 454005097 569034887 832343295 171176059 61877461 817960574 418301116 278048225 452368482 290960173 718415619 820369781 702378453 625800162 49506658 944446044 703452821 23685144 242734934 764407370 829519575 159496321 734098786 530734810 903872973 273397804 600353591 989067740 430044297 463990096 606532336 94320183 790586325 568875525 614170649 654463215 786071512 708882137 204457015 633493141 33655343 265573096 494176667 814606170 438559211 747321781 366184278 712076507 920749678 935292095 977210334 980673869 505065827 548625536 1304291 542621708 412336544 482087361 171267031 724219516 674779668 445648635 496944109 850122765 65793737 439343735 737106590 647273306 241251982 987552075 38285086 669491629 295041459 677942252 648032296 508145590 204421203 429625444 717495711 172820258 193390405 284340657 486276233 921145326 616992128 298595428 40911679 788337810 285814805 419628086 668834650 491729865 125379837 941639845 30424880 153022935 745972049 242837752 148282356 576458206 154627674 823966249 583901794 971285205 442497579 73169798 512287704 40011672 918264013 41004830 120859328 445598898 934264182 966453460 25907738 98033730 848878381 948874608 15907994 733041851 56478387 989656931 273229054 426767849 172135411 953120074 771970087 239238804 952807567 850900798 182025124 237466948 294354771 93462397 944921017 790202279 367754006 572674189 849137113 6647412 500722667 346181361 57210665 592656455 553191694 66205930 287677771 940036962 349556653 963573989 39641088 459701783 383807066 655867886 126638766 346581214 189389311 472603092 844409162 168105534 516312222 12695736 117361741 879469954 819566597 800477170 481154985 847446544 823785001 999482185 533873280 752002252 29104864 559385655 9572480 407248858 880231374 567385248 906657165 998016935 509960831 790703771 991539162 630140420 52771433 388240558 643915664 61560152 22991953 184220427 813283733 25539158 607633569 795078090 134178547 165659775 290376281 286984964 768575073 267371192 196162536 438373127 117329368 659566934 695573821 253170505 417402297 742771255 249448466 598483585 365032579 636938136 875118440 802927489 662781193 993506260 535667161 124236341 250986787 370065442 900592848 132447580 62011644 128364242 92686835 113475175 194772043 88830280 271540646 624415238 486239049 522686916 667537410 768726838 300428500 185185416 347285038 72519932 70331566 886729938 490941467 83017868 704792865 792119856 73496386 318845666 149211168 964446852 208913942 733808259 659210622 756331900 262002643 611518912 246825337 938176594 555062753 464869822 502753127 182188943 629708230 321879662 18057122 266815117 183339150 379189001 148721881 768577738 494867825 8786280 116442447 627605246 105570501 446234678 124820832 789066722 465829006 82270199 139637442 284163297 124317089 676845201 867675779 203478246 436741352 968749177 828201966 122052416 440103438 58947430 567642038 961368113 930069872 838091971 880815699 608053788 149079850 371553883 881586429 92711073 462969289 193657993 642606799 112174725 909123498 97764357 433530431 817272941 234944588 813543263 66793143 661557912 130870853 622431788 150678990 398345573 413378041 347248148 739520837 113987541 304456212 704597141 268606486 404926855 683761247 34301538 404195896 620109504 397813777 580803637 509301958 374489420 81959859 692730324 834350695 761762487 665302263 981704460 493590305 494405585 751871190 641756506 32597542 768991340 675940427 16163134 379605160 206126352 4905721 749804427 372978588 317782353 208283467 629930788 956145608 966785570 435965788 781931228 679318546 318093880 561190617 206579517 351598086 566532297 103937628 82497451 597822852 106715795 386851491 803838719 278896181 265679883 115884087 631730477 845368021 798849117 50853629 495751212 727931967 850023966 411362561 899609290 944194380 302788601 220080279 574655495 443388074 116751324 292783489 742102681 105625236 644326795 673077176 340768383 60889888 782426640 951679154 208869970 480984339 84222491 307995900 613567730 154153493 289855757 146725016 907467300 672696493 470863364 857314421 639784152 730304613 219708350 884786361 783100363 290123724 686380556 449987490 849721788 432801197 429408022 784524522 427915634 649856086 581482649 507838450 525227502 978264510 378433958 38659173 890248178 311919345 899599901 903298872 344338262 239103611 77540775 174177489 859949885 251201580 196970093 140353646 338346916 8698810 474666641 519917240 407653233 583971125 335885363 6279550 19076609 680780226 507655196 120450276 805804284 428576807 81689411 265382382 541181596 500454838 346245467 313518795 622674190 608042166 403224624 925001574 478552923 405655965 664242821 339770404 244379042 625996395 567927187 835101955 658778074 805616069 218064808 795091843 625852766 99200923 539516887 561739231 751657260 879128650 977887499 915637000 142045597 808897110 159105929 37312266 834712364 741590138 967239173 904809255 430686012 952524867 762541145 177861940 729727843 611774770 430606005 149835252 880675860 157720208 879974192 115185817 828854572 532578299 840236081 183371016 146798537 401482997 789442824 120380150 78692650 8799256 918921400 130116061 562845012 826651786 190292025 337493489 352352942 545364975 76284516 113742574 178456813 633249638 610130469 919876071 261534400 654935565 508088735 939972052 595069603 53286436 941343422 167683186 112338428 395402467 773985228 373184285 913773553 332394547 367104524 359999801 460563888 559395832 888272053 232645745 493988634 113737466 267419840 10859481 765669462 666065355 9590437 208670844 95150774 388795502 263885475 613398338 549205247 817208674 278462911 60962694 647738124 705283673 182815462 549881452 204466039 694579604 963133364 941149355 75660546 522333099 731928792 880475195 332176651 352128576 873941434 500829218 58968781 425919560 371802043 582977167 676192481 547226746 549038086 986560594 843966092 688397031 404433065 164309270 797924688 891291128 359473842 618072946 712299641 233203918 414017020 168139174 186742090 615926487 264974015 474212671 396830531 910122901 243022626 742682767 321861120 709001832 319622800 89259211 182159877 463937888 872861389 218534012 360722436 984311273 100658459 972622622 863366152 822773058 763511375 789241968 234411917 371530915 842014519 785007171 827782072 62545344 329475039 516118395 713272683 793871718 319520882 825407095 39192181 904995408 587923302 359874848 637404157 721181661 271735018 87628901 680880923 26452066 996924102 270334725 672756206 801087766 253428897 65487525 282583254 557261169 646958317 852963206 997889711 764192884 400848543 124444082 54595184 530887725 441603481 419974395 780932138 695291331 142775906 895108631 953696871 721800989 415265087 442441794 860747871 552651313 688047 305842168 983852929 109254065 202195357 807497257 357271904 559682440 834714527 151056111 494991382 748519333 457680924 587203828 545266282 847227601 672069312 421366460 412705282 416057911 614236302 798828975 386706163 889097702 803095217 150296149 639875456 414138019 420819822 732675056 954675798 725857459 734757470 894969940 998777287 291146508 234789265 445081817 669468857 618580764 134246015 809621410 7310667 701325979 400239079 563203451 299151261 219462464 395547757 966968514 864723865 298806089 665478457 776731390 407433274 23069794 43253615 308327174 978521988 334271795 503583586 636692337 684586214 607469502 6460209 210628396 631895346 2366112 965372871 281238473 918038305 992939356 913074988 360142070 441675806 572063397 317796512 410444884 912095664 737232893 646179399 774735524 604562333 508846043 32601103 274290338 189308416 705029629 172997631 161686410 186731536 784944502 248081215 912159460 43596185 126920229 711765332 299180735 223197319 272536342 695767743 346087297 626767957 360213672 916105803 499672717 11888930 324401694 61194710 348325606 354669201 443227338 94263785 894390884 598780627 998295170 234210434 720021863 753690763 39632034 412680221 952493835 755962973 805403610 914002561 631818354 229297112 853222760 556238217 100570724 903049554 720667940 621672409 95402165 165349778 478045911 995975712 267286282 586147576 991261585 290245053 206136323 224162993 57648694 69341764 169170056 680346663 32099331 44755211 362028446 617035490 875259101 97739084 903103422 869755366 270175509 483869773 283151783 478314600 568204224 48314188 463646612 377565115 387984390 594825547 257851387 582124349 719750353 729030303 484171728 203440599 905563705 310282618 851501933 82963197 154076899 822153991 304371232 842513690 892553221 693335951 174978049 995699663 483734880 517465712 719156422 139044689 967803755 619104320 188782792 58135420 925349597 718924951 968881344 150363715 66176437 298208284 520959757 557859196 307026319 747424491 551724046 539141293 833008197 714402470 371867205 172609978 587125682 537725397 11603180 476672166 161914610 726584825 194208220 150257241 365343584 433328830 352138854 532890783 524240982 773551067 92334808 442206632 184073825 444768727 850583029 119014444 219731208 505706576 135347194 641559564 437634208 437681228 895566707 415909304 157809347 340369958 605900 246806046 823782967 391185753 3497665 512258828 406456979 823907529 967919302 305679264 67710087 837299672 367400271 641532939 134660087 302035762 555008467 376576021 381091969 438148177 79131300 787142898 962412327 7539001 483724593 770708054 871440736 401021217 582119394 606459112 142401332 375087554 392904007 396641545 557838942 907107449 795738318 466853705 177974913 382316098 269811559 117169323 88176609 199152017 166936748 772788600 513475031 19399200 281556153 950682256 763471210 85768945 416658409 489801332 197570391 602504343 990451069 200269397 400921750 928389797 423824149 614676944 868005470 844555588 639819913 95564709 590584318 507478366 150457507 421990186 284606460 143696889 542731091 750608868 527551445 375029861 952218842 729788197 625432437 396996827 443739776 862401643 750829112 451225286 731664308 101526232 294425903 736035751 890246451 893985239 237633045 384293561 702215588 660339494 819063648 855184916 972824870 570994871 862275657 8554869 200182096 272382194 349152505 407351094 793558974 703948804 420275644 787086579 931987972 734429978 253773894 146191270 532090985 970374241 562826315 686239038 245392968 739077110 994191841 90028719 4949345 528265222 620479414 272400793 763081184 485878347 762269068 604833012 419739552 914311549 231614287 742263437 722976200 598852234 166311391 202284754 801127234 139878028 336525898 760847671 299161064 625138116 179693066 42613216 912741576 263381718 109937074 635881007 716022216 440168728 237684223 69916107 408384564 280221552 597218079 79079897 647020945 64663731 493386298 630679616 798076674 578226238 765971926 997166296 935583033 702180399 779290971 847402368 148293488 306989215 613731437 414039118 167749877 716674223 442151343 33420286 591092172 842397823 208395924 360435326 132899079 280405748 658883848 352450333 959895028 971560223 107560034 643777254 235015880 942183026 399462912 657851634 810310556 211872699 264809753 761313794 817941071 166448915 167380320 48364346 409417592 112981435 134037937 397962077 973300227 156781240 690125420 754723105 839246761 534926359 49436932 241431502 123470798 807277357 246152078 393873107 638094304 464468117 819878892 201036450 418568429 510340999 941195320 574011818 696340936 882469227 746162027 113095412 261112313 332127262 881765660 552621964 898308705 524419291 507523286 857339181 983008841 49104630 405001892 198401081 372616712 907946985 674892436 653582619 679662931 450511832 400076793 978088679 956328769 186001477 884908445 653731494 357579838 185078598 729491206 860267659 234506476 534918154 624640974 155573521 280136428 838579309 509149732 192090108 444197498 226355787 586223425 323545314 106125502 683886165 531339394 936128108 562511981 144078426 779809686 697359321 261201481 625982139 742401559 986824003 989630375 982836633 426882508 347455668 973281402 267228471 45530790 348551728 731256629 514835651 744345684 217166915 52722969 17436887 62019356 292659379 261794865 162181503 806813195 907845959 750976757 720674833 847522323 20443407 333490405 107954652 376182914 406267076 13262746 361286213 132235741 919567161 874471893 758001801 524422578 671254464 40410429 804525798 157297413 832582760 518774813 307208372 244480 869244445 335405094 566104847 343725454 9903396 380405790 470226821 329542335 210686953 451988426 842035576 847664217 629473063 670761542 988740386 483876019 525971866 30917012 671593231 34153596 71871942 161958621 816761214 609040047 545855080 393705142 580266504 770351756 918713989 72775262 200598404 203163450 8853001 156610313 750440145 258063810 24655011 558519807 508491045 142811416 806258609 256531283 727644819 190194879 578737728 159753998 823190469 261180684 113177546 720438777 515195159 268951637 336991709 573843845 845325948 741911087 910966049 845906533 740928942 260115336 978730948 428275825 943070114 398060729 385436163 745851273 294379777 953122865 978416440 851032767 42186460 964869369 870711708 212774848 926934923 863599074 828491630 326836311 219933777 35472710 627092181 216776360 904584874 976305636 119867704 933301311 185495272 769850626 92639096 33170791 958196989 974067990 822634116 362979289 431133801 523463822 245022558 241550791 559378908 230435390 764810068 170698173 315880402 688041846 659036871 889578238 673326177 575451155 235428155 485738508 649078809 647814134 61190104 444801119 334505024 548440529 539026546 618536126 183755117 90377512 8595406 616979052 961094434 555491645 951053435 509770867 429322498 401918744 524269226 685346210 756776456 698371829 948745799 264673387 70483246 906475735 439295927 253541924 911399620 842234475 644851074 63092214 133143630 231501356 747379709 470135683 824724996 924823428 543210532 573843510 303392288 603367137 165570224 74592930 742607392 735286716 725615856 588236962 113933337 312324610 886120349 72390912 791787768 545362121 705776113 928992814 487322268 845482171 118010254 152738642 81663476 351722487 597882139 138229161 250964353 55006618 834064605 458297096 728961181 907180951 940711531 122302398 841393281 814594443 433469006 869232932 525298871 917130000 317610700 821498430 902368816 544302502 451246981 535055855 953722097 648939948 783259346 818526896 31343645 404791447 270376730 203308156 742516594 549756595 823132900 835325448 328139536 788371356 251542367 1194625 949643593 49678816 627073306 369086565 98858264 244252491 255465150 648298284 826255648 469020884 643951876 326481601 954710249 35955117 602565206 998802281 675927907 457618928 764498829 905176180 928672747 535582654 7203990 183565021 287098720 469091546 20714120 91426638 923281897 572925319 784636152 858696529 623976569 495148710 538513393 469782647 83926981 247705843 343073428 564361879 22149900 937146808 398373321 484097647 757789695 324230961 500779527 743335419 386919294 894070318 762830408 568052591 702273839 875455472 538250848 14542885 27502792 231277776 894143082 517174556 91036562 398628353 890882877 909830539 937787272 908591386 787680863 870193072 85185358 217995709 503466120 140550969 414174941 686109330 433549013 973446581 706979221 299907566 716351134 695705162 508553849 913941963 159003888 767722091 349516024 984623468 682229834 56122271 746587892 282055647 565248036 59849796 835577075 94746664 325116376 551441008 548891537 237246771 820478370 223391817 472419181 736439363 354951940 884410558 935784930 823888620 856621811 279907572 561642799 729038638 836779053 507559515 940081025 508994480 889045791 415743777 778064823 383877252 868189151 702068777 253170312 450349240 495438779 228274347 573376336 730047781 927018250 627846111 667074452 916391735 434395385 607787244 411446807 489551420 884389106 311125426 86027474 735721277 8148004 265254943 595402495 884752824 134231103 103658013 769943255 284940916 377643444 868744123 947717742 101953484 65361946 115404155 315950124 374695093 567869051 413434435 587354888 366911930 132401163 927762158 946962291 394787113 646981599 356865989 373094823 277642429 282291117 339320166 60563384 92092445 30430291 187471606 810116612 28550011 263263888 480874978 82312858 992701933 338314401 390042550 927443875 218103193 344178830 406063501 202781066 806790301 851287817 748797189 351877767 319751846 430614612 139459669 12809958 143899755 832069225 372041776 770531575 936699375 813703448 482113899 550975555 833920681 922825730 604392389 987498027 66873229 539039484 838626983 483020658 716900933 97007707 361115108 630605903 709277298 517409427 606214534 379904730 126753475 349648825 918489319 350163252 421796925 349207699 960172213 270197340 567625729 916180531 751241458 21336800 348954105 731437026 679696578 200578206 913878846 937888375 836992482 106766299 737959986 489627796 172926826 632620894 369519702 323530727 81052819 729147179 32208018 722289366 701630581 941540881 371997137 65852259 63216548 178519344 912260516 837989099 812050540 871633955 310917035 497772914 905124957 638671956 186694064 48583781 788345968 930417739 85387315 289754922 566886162 334730174 655711684 837464870 835408637 294952987 426148477 104484069 261169889 294996180 165992335 181667985 13765346 44477324 146799221 459438203 72126821 882233045 726798589 702874076 280723118 235254226 662042654 574264550 15832247 811608458 193466549 985784026 190206403 83161553 458435431 538398769 302614454 364259117 705372026 926976285 867367503 685910728 125122198 568474524 414438097 593904629 956044513 592105218 196733961 679581486 173573569 191737541 244387993 585610920 537271933 994574296 975491143 239312489 964127662 904138415 981265508 116292952 869457061 828822091 722840928 796346734 189203055 722901248 186246718 190172883 854310489 264826047 126191599 834131059 231272908 96170470 392059726 422543915 484408825 980265462 196145026 718632945 349924342 528641102 526706017 162669218 121661317 289019569 993465711 799652326 244532176 340575633 568528516 438305540 552292841 296038198 969837464 558570615 351056389 701619726 65080134 90297044 297915736 452639615 776857222 19683415 681378247 384899653 749819800 399733245 286200483 18857531 264130711 447719971 368690934 543005211 29304940 13598269 369429029 221752753 276601347 556968623 776039121 343210495 686475008 563888597 498027488 532363670 492247658 576068778 852795315 760109217 362227575 924769303 451454154 60178606 795438977 201131739 286183785 788944995 801055334 302112573 84239452 145738104 767162142 49486931 149673656 900695385 493182274 147825005 738937284 934967588 196137960 518863292 120051886 16628871 441445456 440488292 488007612 360279476 360428220 224346395 979301096 868196689 581386176 251966961 751771362 300288726 255154822 25615593 847187335 81545874 746166179 107349797 878687656 761562389 42371905 442181693 921285377 347783868 629242981 228545899 989230109 1581588 584292554 97859553 173499437 68182003 376539681 248889460 779663410 454617591 842335715 462615230 65910435 679055698 125223462 959178065 331353490 89592029 276176346 521688920 140986081 382796639 768026463 733230135 137419750 971320714 798658106 46811834 64781466 265775687 530911283 194734223 170912357 353459518 609156702 890237266 497320827 467370535 323539219 530189040 56687035 361064236 451071573 646028545 909715972 931594519 697505950 302343136 93217874 909709293 777789617 629666202 822468560 435915998 500577945 747631090 959963280 238021208 320411612 409708828 856651939 458057810 824936573 164159441 833537914 753821064 485991559 497515048 680885795 307226397 622925116 85374918 732313212 912215667 721144272 187680876 34963848 477924783 423357890 569689464 774075715 80124577 709914357 471800153 574917195 60731836 362938155 960838506 277642101 409707444 675653162 85144927 184896690 709276701 328737428 361290411 33272983 531167360 602038927 352071909 476221870 639663372 816406963 567788259 638152656 386113461 850071655 984546947 302290565 82830161 277132628 253445188 979836687 636514512 287187345 179835478 693204072 340027370 509607187 391325527 852313055 829985977 86124696 392267285 457056858 388099032 340679588 531618094 362386036 117874387 45756772 759511709 591225399 59198853 554035269 619378878 388351191 242438595 767966639 804357666 548788159 410418928 944604053 943749165 179771946 567093493 766993211 199392233 729556399 30984159 611058005 400412893 331736199 420228688 165952252 135309633 219371252 273766250 960517646 358590018 305266168 507460654 943616046 133509120 920303136 674880320 565165300 915274609 445162667 368553981 172903284 96407418 947030579 204122321 501472669 938274063 713641034 973143931 430594043 108085894 548693124 352961941 146219965 969532130 635119454 978925555 69106237 518436025 831847491 637857409 275936184 896708682 882888688 587149761 452844753 141159853 41111610 554621085 733746177 231085417 470824319 232697741 836151601 500903927 485989076 685705329 516037341 272313485 666525882 886849997 92239379 641929486 765706660 741006041 309161336 513694998 979538698 223592833 993719728 724258375 81116030 87014419 358598140 157255680 855717028 35770856 464834415 507981159 488708945 74201612 438169962 461872706 202207339 216208024 21243518 596841262 399584804 429909526 944691623 594200170 167548276 772599281 307748184 78483715 602065744 106492142 612093057 677517824 745217376 181441763 441934155 280322653 73844838 361335669 693879141 837177251 229359975 938391428 824395734 677306272 308925496 303436321 647318223 169161905 729462305 76799691 121629116 278081086 525248623 503557562 924729624 376423174 656247143 139852018 962254033 289885303 461594210 593211408 868844353 150659208 355409477 116062915 136517976 623045950 462249285 875873549 819922598 72463085 77857047 479058133 960702694 231904405 863262864 856508030 914231396 666065985 145459713 351133963 779773512 582273885 233051475 139775248 250749488 267909967 31595474 417137607 425896385 225095614 334044868 18311947 986295339 144087625 449310764 770294028 323570356 914225762 393987135 446731392 184267559 175445563 992413105 505660305 242013396 314359584 222424719 220811616 792815038 955561746 66485611 780585278 433013138 906071630 482194002 299313403 801483877 508575078 240821944 320524598 885077056 760467289 3176500 960687159 4740841 311744143 613780192 537931669 161635670 625757175 985727101 686101346 435807293 734587386 352531820 946451225 580803357 849617044 43990454 902845316 642731261 123292982 118669688 294247080 229331466 934376887 716290894 595659814 326013891 531598173 778818176 442829728 642450247 860800432 788258848 990081508 831703403 761413712 855546212 335524720 344445465 400260933 116555951 426776902 484368677 315022583 330486613 451287664 84438698 240892350 47785618 109219003 955250586 300715905 807545145 538785719 639936394 397172008 139039604 57877519 360364266 622359090 269794541 766064343 575355691 877412645 744789470 451093203 306215416 157711110 840343183 930623499 533825632 616927281 307468261 660957439 780868461 13454808 547039891 866628569 539585180 13666635 186615511 948235403 315620376 441249470 657505799 352358827 431984500 724195119 693658473 165790404 911556117 58414686 711234775 703746058 61643132 234502119 85987688 983361228 317031019 453822138 143901302 296596651 261255075 181357834 560992720 966474719 652920925 333540853 119703514 340304420 962926146 861075446 687636097 97371654 709538461 85320054 138699908 874989783 352760559 755665652 124041101 104709356 934010312 67658400 175544653 780340900 272244429 74614406 335320356 280888191 363875921 863869334 197771543 683623653 247100686 694390031 982693849 512745610 801993055 646733796 39362826 565742364 514681690 464105500 495042991 128911858 259120895 330221172 185615607 889932766 727798797 619702225 74642492 200129691 710649997 859166345 791986095 399732192 503513729 992791947 714138981 179521276 150274610 545154204 129959364 736766550 36409452 6037107 259444298 558742981 301667762 878403037 5492701 457498210 810001913 806132257 481415353 817845508 169781728 690087465 408495895 430556855 224443243 762800600 639119231 246075087 586474567 140049738 638252867 124279630 768504881 537933599 570179223 507456776 507471145 972922423 301376887 396046983 656581851 42249171 364576899 260264229 32108832 955841216 464437134 661778157 246969711 382836419 311178064 941556636 583557403 686739466 750699535 779476517 758739484 35310532 671221621 846272632 277789485 667364234 712425626 876361647 694050144 659570096 974386420 561374443 559015184 989615417 927256937 667255821 116246849 748768362 667653330 65540124 526761679 92805410 335323701 272864901 130526385 434722385 614148865 198532859 760293984 213530043 878104458 176189427 676368593 851587119 3260579 659922726 835538580 534651848 659699640 846939946 815117139 569413577 463960501 655677183 225057213 322383535 448449687 711559839 163477206 806993064 743523176 873671976 243999246 749138363 52540519 860306123 623774214 642199220 26572328 755530207 173153403 952937420 915984090 280104143 827175991 454880709 327426862 570026079 140644070 678619682 72859363 407606051 757677347 409474259 129993527 154644647 930667171 765533808 220845967 191185330 869346053 140189760 504152087 109899794 478082994 791692611 562964878 15803146 710888030 24045063 94257218 536875572 366338855 807446177 498473866 85621525 750122501 967593638 388409121 816768656 226590981 787911198 805100271 134460051 231413139 992145508 7709275 96216526 250215444 562167383 343249135 84222708 890550253 356263725 705793225 766301169 648304419 309832102 896351412 843148555 202310618 200287181 891562548 775628997 58237727 728597271 278533570 898763329 93426510 35280488 326164882 51996240 903928959 156840923 892789707 292744838 534954468 256711263 276954861 644738435 104422681 628675753 659912097 144121538 300458205 514825283 781338168 88506886 765937281 843829300 430102127 133232138 597513769 431922434 999671589 988499993 482048731 978247631 985320944 372592757 213032607 727056884 702859231 775421147 898369686 875980144 865926566 405862531 810102244 41383901 945622803 92519711 875298889 329834857 638112648 173393002 327444196 958181012 390876118 830598911 313571376 592069989 241442333 668328817 998310770 580704458 594313085 133711681 209802362 363584565 266299682 727803298 770880781 309693606 518051861 840076576 651610367 465099588 316893880 125991092 121901995 714023933 312567298 893614109 175140252 577192796 25689652 574266278 785771258 823444456 622751433 997584769 975552087 21814241 926836201 406563114 45094291 360957738 552168321 240707313 527910677 126310860 560098691 953111765 117046671 333152431 602158226 237662992 39056191 403088090 79916583 842537928 289345218 239634654 476163294 997893886 7366155 563112863 543954555 814143970 572146103 79878059 481666124 424699106 307096356 269289392 368103270 468627332 514463132 976830706 119750758 730127265 972112204 534015788 175566551 755001214 50244339 596912677 716410858 904129107 663411985 310399530 997873879 659411512 939843037 844137607 543907090 788864785 506090128 284250314 37239198 382756705 853178352 750352338 119097087 698368335 883346391 743662991 240709265 561388487 255077057 287133417 220399065 877603301 222614599 992616886 466109196 926301144 921549644 935576507 252042326 135285539 642806845 990413107 767164187 496397683 922655143 145422710 348716466 602793569 757216818 734693395 263774978 656916758 687064307 731563381 327686711 51414192 209003203 21538922 660831429 694975133 617448135 542091420 522349758 888596401 754258857 559082259 271888035 144562864 917432750 935463694 860196287 634557108 106284188 832735038 965194768 804671337 159996577 345278446 255544882 614461707 47916655 573856231 181177070 637517540 496447904 604853724 962623614 653218733 290259535 293619300 357222650 116238640 219251126 76038448 6375675 613073698 999745302 936694334 890129220 976546727 950120299 492307753 490182562 369588731 936676254 691754750 819484076 118533691 691417689 500057564 259782229 538756229 871804855 818958091 342060445 212454914 497918917 940754879 927717080 796010494 670669446 421031982 305434729 100836349 108261795 984677022 849700761 586798566 220531728 645468114 34308975 189789475 259992763 253549704 970352893 171992344 610682983 924289760 61026033 396601768 160250805 597458573 530144727 863329338 164689707 513357017 219461161 232511066 839260357 675466317 169250264 192356272 581954711 821594885 610697322 248753460 248483421 771897333 135741360 809744195 749458612 933937314 911042000 947143361 866590044 454909969 718827545 176075276 674730196 49519858 258584340 368062659 83748534 753548428 213501399 539260356 705402807 88035569 394396721 420594089 620619366 164477598 372791643 901240516 413723107 304903452 808207637 635668561 91038687 532564158 159331502 938540631 591518480 511156591 111427068 719645735 215640660 555771543 589875410 738418211 350994330 25149087 389686764 476326346 116660082 428696029 999237394 731215618 579408920 664712660 542186805 705728662 321873320 942381881 97349066 854382449 567939436 30366655 324279027 277728469 72570044 352206267 152484644 176578095 693395174 961731494 848706708 112273009 269063621 843084078 181126959 837084033 477980919 767701408 951233351 238051036 618759801 790686295 868404805 175971912 45683130 410072939 561498253 915184553 347691303 56013148 752266845 94856737 938976096 682143805 364812545 60841819 402594833 353724775 210012094 778454408 560270759 931069281 29095049 317620925 807120179 100606173 279123013 486717012 753498097 39602744 622394873 580633658 482659221 310011305 155435658 936889291 624272208 632989099 920652556 594525277 547867962 741814457 844006416 135055942 660253239 382743046 26859011 401116066 249162418 58793380 519782882 501211881 144761523 421559316 603698717 324395984 925846041 324773075 288887284 711515838 210960795 501455066 531981499 651382655 837183270 504543811 250110313 220760142 603729747 265866654 575666786 33451646 957156699 26499091 924057282 795859535 225883040 969914834 903161327 544960245 937798984 833037459 882983955 260641523 819077634 948963995 246506259 602552295 924938685 156960084 411744563 620096996 461387675 743299745 224587352 10017335 537833686 884960299 708876538 483979693 252318964 105427455 226016615 846490366 235952478 909187619 909400848 71591759 504522671 352339731 534074997 245219437 828240412 954471208 318804929 238692610 558180734 53917629 891074805 451160339 706324371 551443221 846871004 987704519 344104040 929255395 703867475 597716137 644395722 940850540 698509981 3308770 857869077 954159940 961995177 828301444 250648901 88003147 302361278 481528532 33049336 112307781 648340280 199866230 600399779 823664947 983133766 935589905 710929254 851804534 164560950 170502155 504089211 886327338 158626655 953745536 624935330 321851581 632838711 421663153 973352480 135366920 222573982 984819363 776369962 944293015 413637558 213828573 127446033 976502894 611450510 783739667 635853737 592077285 683041809 291569633 617336665 465269484 324381382 852261703 625074458 81121027 470116805 810540426 245943247 377911533 339949434 994424535 484346988 228180512 648715507 851862415 357510954 388551956 600250311 468882970 880811104 2235478 985230210 466269264 163847831 438316633 9185861 48698098 756617722 946935899 789566343 765098940 88948385 167368641 388048721 471105370 676229787 109118501 993764608 7776679 494995233 144598000 572799579 991483455 977951066 365769632 166797060 667168315 869359834 872785378 840852006 540599654 758105549 643155410 897343442 796342705 510841632 797280890 638478859 924862780 567243309 62167283 606650927 547344377 294793812 851342971 712350295 708935581 419947202 399488370 262750522 895388765 643503515 135984797 372938405 911194849 910118325 241014195 950448889 255246734 302325686 293067942 193457413 622688559 770627140 786762927 660399902 439215623 43326692 161317009 100306722 803921905 227284515 348810668 209395198 309931447 373642336 669674982 129299030 720488045 68688911 208884712 362434002 505804238 506766190 947499324 267183871 474610194 507130018 787382301 155671756 228970536 651932128 962234591 621981 157208123 834115929 687378518 985793534 797785775 505774899 417922899 537508547 577612779 26065162 796664688 175698809 231505137 134052699 17975226 123223028 391253819 147867553 369098441 227894410 953892272 964498202 827398475 178353188 257425254 14267846 4093954 192390659 274412925 147103144 366586337 170538899 197704568 407610764 429267347 465171623 894407726 942509748 186264777 590734748 62184719 280681992 363804338 982841964 85777620 386878023 190580799 21199947 795604002 875114967 214668153 72957184 733793814 941306109 525780215 471345726 11530515 102443249 232916490 915011065 432178202 285410708 14496187 613587631 11111461 637453670 454244899 24791929 46168451 830446043 580263093 591216175 892095985 291368963 568309689 255337155 931908163 881858754 614602956 493399386 68035106 928056799 731873650 444579317 836332950 182499543 487935547 398401295 801188031 741104331 865297251 111934225 924518124 961827816 618870359 475697926 753124549 205508612 950082817 19054076 748454798 97545466 288547117 739950926 82431265 602150945 277022780 428946374 585834210 523266696 862301363 140037476 51584186 304842877 242960125 249482044 340994271 822440844 803035717 402165187 611349642 731343421 631439384 402744757 964958335 510129523 656573809 453005541 613553219 709851174 511137516 3492113 772750799 856887553 692886960 284889711 947751299 741399955 213988496 426332438 419233722 873424642 704387694 388327213 563309434 589414484 423437492 956041734 785587413 902303869 702303698 757094980 835051003 750976260 957303319 198501658 571520845 667701582 546264361 761193117 588764832 245323029 876708481 765321368 36578533 423414441 78497867 795457264 669161593 524220484 60376872 686145685 220734751 978986097 225987820 849875786 304404773 472647705 719797298 930294824 25528088 951392272 755140846 788682232 670758849 762988384 339205389 998221625 868523578 142126476 861562922 139781734 807579534 440275693 940871237 419401091 45614550 433123866 402686610 300678592 530017661 814635791 753092746 472400857 645525409 589105627 699405225 391060718 778297453 669196060 132322428 914055256 564327148 800173925 9593722 459343943 772360055 598624406 576934110 644626805 862330168 465580916 572046176 688997862 343528070 94428385 734606470 743482472 177114218 978887616 585728713 593433013 448435175 566021367 508148372 457383424 295216510 84871564 627166251 513341868 180989567 687720527 62072131 443645588 633905599 274962536 732777743 667268435 783719867 952272944 617157028 433000783 525954417 774167434 911959406 587296264 210328910 305803626 496912323 567696367 688652356 96757453 831107428 479991717 560164642 84341716 299144408 68664821 134181377 529807446 820876577 171225162 693390516 934607123 875597227 202607708 914237890 420960165 809583515 549877198 31911365 155127824 322486426 167440040 200993264 631615620 145020052 990573292 106114821 36952437 769292261 218857926 889285293 950065278 320250078 944321000 307818994 952866215 964588616 318742160 38104766 19112295 102396238 400840892 35164642 692653802 773725085 103865729 713798695 548052309 818066310 42677518 491651393 712620005 540206319 880258537 491335355 381572683 177604632 642435261 553848172 328614798 164252275 97736675 605123038 800884750 57734172 995547485 487384257 883406671 533273639 244848162 942742714 161869450 983187508 669104222 645270885 187813501 934184008 695299353 160426377 514255661 297823983 774064523 90201186 970212999 921011291 549563460 666762240 46171895 32509937 848530923 315426329 701917160 419394279 372091722 833471945 140537907 451310719 847018261 251446394 151956009 749261976 895882802 837410311 768912294 393661197 930879811 456416307 540285271 683182254 963801651 507298922 668210595 5764108 174128323 606417044 315656815 1268220 409937948 161665823 241084682 685226019 593400722 955391408 712034675 488679413 532828537 60283353 31890463 977882521 992072287 88752637 249059608 4915304 914748882 755806920 247165135 761377699 36197654 927851038 285209389 374714254 82080782 965190732 745190808 628378253 694900705 863480917 311467534 938411683 188762271 553616553 403745877 936224832 887245166 889308674 74271963 805881252 686661218 375841496 885206972 11256213 216334809 895896896 181661391 689822754 122978239 75929901 264456705 346441434 576530259 174257318 81611180 338709297 532095922 901710977 484156416 441140430 280083575 475888828 226246361 325389346 682182817 203218862 677505642 145680873 477596569 33388647 906993046 152829535 684816788 525764459 441011075 86535723 940793452 454564592 543329528 785812659 668717085 232104658 161210241 262335553 835333530 961979516 100086020 997744176 839040305 214303619 456780373 211731167 758868327 371361372 297889927 233538795 629732359 656864877 258811959 465722052 851391579 910182316 799491603 847693427 512527081 81957037 756997112 444234639 332362894 430980306 233124101 451589179 28724353 989615857 971386192 800827160 689929003 695199446 653061424 257765948 967805282 555397051 271882179 89029635 505430526 172330078 702549463 862751713 383619829 883591719 353228427 129019692 667641803 468754129 219661520 725552132 42365905 301373291 853713509 86137654 920129226 555257197 475174045 975911541 724983982 291528757 895569472 175832973 82339843 688737487 952069067 112687398 234419254 843626279 823113754 446204018 697372581 291867983 229744825 83016835 426315442 573237806 156113615 226485214 749910114 305153878 897393564 301327710 853923941 622528489 332094290 87556482 85930324 90627310 764387500 624036542 309426627 335552774 990552027 636731579 210504289 407897650 535391571 390236416 789336861 707635764 359197217 409431377 421786189 776434088 981570207 548492996 749046405 616720060 845780738 364883452 925413920 911406593 619468217 11815325 996029232 8743010 750815251 711040483 346551853 278940668 109042203 613819100 229947543 388449006 953191361 113119450 739864180 294351373 753307049 418050189 291553998 708552462 405817753 853224010 599758908 611219764 756780258 492665897 276343846 558584135 23283782 794870232 907115832 277092882 70028749 395607333 156313793 903658359 748764870 267949429 197367806 560904331 989479127 212060208 269173275 23869000 177639925 951693829 887560872 62309443 82374653 456174401 432446819 889726629 630080 674209243 993924693 910271077 750037427 800924493 752845942 33501082 940860479 40434922 958346144 388663378 765120550 571365071 369862895 234725184 212221831 49872573 267701780 512860493 27439083 495629326 457510387 435452685 992268767 79813835 714409955 458098180 672155890 442596364 659726253 210625750 87590077 293500774 192217113 559254534 442323267 349299287 837546854 110160572 823763098 444882837 6241758 915194636 827156147 271123926 813540706 651672114 472099906 196422371 245705044 982234174 478292181 679583961 823703069 533780899 5295857 528477781 277279564 576630067 993726289 228149862 217593624 764682919 488512408 533624044 183863824 358950312 215423767 176627933 215085214 170694968 789304088 853552161 867238823 451054145 451221058 285787828 545661872 216953503 23102694 291216280 223563846 840563531 117120589 332546956 202516887 235157559 610520700 446220131 716111161 165898922 483760550 430241589 392443202 896808337 379640860 601634306 966687140 437563182 694918961 50916472 742083748 98267803 397398318 591079156 133883357 522013834 168459112 328268061 334032038 247746226 859210847 777128422 377323015 812649005 137048463 525699966 635373915 729990637 651216017 479298259 584800796 319561080 449869516 382866168 10182222 320071730 732057639 897803264 419296327 221660041 802682968 845793467 367833194 506129034 982402207 40110388 94804703 587457714 993521925 887831376 923378076 549344985 750192184 532257721 341237109 120322682 484820341 512362940 65777241 260450559 194762631 666099900 662496905 36021668 916093578 869536081 631008999 660728257 389721169 626527952 340922340 60783281 697570909 569998298 146812087 324913421 793081721 957602678 26479376 268696993 386808909 908154154 682887056 536949837 311377951 868441745 329670538 916121392 743490838 955906624 38454739 348782305 382041683 789302594 63094474 26173555 830983299 793818271 935166119 561643326 819104806 835849977 701693675 258204005 438498424 512317596 808889507 308446542 287887885 655502917 582660398 289192736 366411999 515659906 695826051 299419663 282259221 858762183 608524933 323917788 696934870 566356536 342053246 951420284 65980806 812000332 813445439 885393385 371426412 373181934 323519575 216944773 253716918 663337048 712237760 696989869 761012988 936077604 391151401 573503311 675872426 472901974 383075457 61223413 221479341 139788493 647930678 482086861 660347928 880936174 183884113 231090898 107034848 762236500 842807772 703623633 746899066 861510232 792904312 606038352 177106336 147896209 603189564 315853922 315970329 905315535 284612706 235817769 253860507 789251694 266970139 184499941 355675993 585227852 158803651 450435110 787515839 940229546 207833442 978721764 856393157 223075518 526719549 844267821 522766550 757785911 177826039 914972025 709845642 392346757 181648330 817739873 489440056 437849221 253236317 189577191 473277157 139033095 363642788 176111859 210569646 773918560 455268273 700574774 696471185 692378441 188962328 768904082 464898148 274566548 550783233 550599747 877908354 868912085 598643450 679571384 253317638 663727856 420001268 881356502 8088198 624988155 933788996 14483267 916907169 776028017 731692426 510797580 883764467 880820067 248873017 733490251 569466263 504498628 806739272 32461388 478736923 232051532 517512487 88811172 140837239 39223035 583901843 789616895 586180167 422338973 832210973 856662682 440610195 772294028 48153707 103108142 631913016 321183505 857900641 129327779 842048636 559710159 816493094 358124964 164713708 978058322 804852264 548381294 111104133 162472247 307167641 198078312 270280295 831282970 927545162 899099481 52703861 749350785 25255981 993912416 669073230 651595249 186998804 703286507 326272179 297835726 371595088 791911679 584312458 224235562 601456334 957728435 814321456 904289120 256193720 266393742 439110259 961987051 916058703 969662527 421018377 656701917 677345674 430018884 922899569 891796090 83822770 719699026 444346401 231487628 483092541 869307390 301995131 373128114 90977520 61086753 765106801 482048548 447945322 470150667 742203395 190732160 269572448 348237285 881695169 917045584 544328643 221852997 835954774 184928952 684733154 964311644 588390427 615685414 994262431 652240548 664786232 24708204 10573022 214047172 178986712 268206007 198776541 307753580 897858992 999309415 215612413 574767584 299780906 860454427 985692772 50080916 788949765 564632957 711152708 43779504 114953749 979505836 813035684 108525282 959038840 944487674 530657760 45860506 14663950 52457423 703952214 350089857 627216100 588928244 972667621 273098683 136249318 561495304 6638403 355117816 882082710 912657461 465780805 824018596 52181385 223268777 371753572 545378585 133452015 290974175 631327871 728066043 996045282 918316418 199353236 824331883 376125692 963026067 84522549 411478428 522257999 739169106 486110715 631897286 909138043 145073733 87816021 395535975 504643549 806888232 941156529 156144185 862851528 772519953 99844647 995410099 663926874 985266173 611252797 184979369 612755204 487763321 640424392 129028335 647234621 728574112 808539175 809078293 230905596 738086591 719417859 156623523 721766452 661635763 70192835 52467634 658740252 254709350 636871088 181429157 22194363 316972118 429657085 110087702 134356756 87665895 991856795 192836076 528359889 788045136 872792364 277684239 26719497 993120908 768292811 397326635 27296461 740059711 512250698 35726417 682599833 722986651 710215671 9675220 256927777 3651765 243576973 385344640 385520691 367841882 909745283 189009506 409954615 453337297 249738206 927028323 895431058 677500025 426146587 916917002 140135097 229787995 41023028 70937248 24769680 179123118 362996774 908781394 993411010 619384875 833019747 680136991 863967896 27784747 736776508 839366084 184530663 924705193 519254365 754045584 40297371 593182680 221837229 680090097 61744938 2316341 499311020 737755646 629099906 553569716 241606345 347644959 475025184 468485468 948954597 805555985 462821399 949184944 80181961 338151670 462324989 152171 72752873 541129459 296948605 970573949 496243343 3074 548226593 183184683 910158570 219244648 728394522 997895629 318677651 450249862 305211960 187945602 459028841 630023041 538361324 963745354 375581229 15737336 920718804 582843870 86681363 601127772 185467179 624268313 156401814 388965090 416591882 423395374 852989330 562183118 652667763 54733901 476504400 616399621 844801546 633386214 717497993 615096665 941561055 513795071 71217384 437324336 38025460 342965065 421145726 635524117 795571726 713199659 156780833 984074222 790484267 355777948 53353658 268576763 388045358 398217463 341016092 51601194 183757179 291341076 291815385 385588614 908409941 944427599 527712160 206953029 692546772 867901900 880624958 396328345 656213417 214069528 823136788 184851269 816462584 523636818 723505600 357909053 96397264 662617178 565706983 361484016 911258838 407279197 738058790 634685573 394577914 75144455 841091800 152655363 392496398 627209381 813334639 915242740 584121530 479927828 555745062 688649660 386647846 72885729 55277345 963487588 709664174 623545694 889214302 809908016 772382144 784895715 570530973 616538605 173731120 125271313 207384029 950101581 92843855 672452352 431038941 29569122 169915600 912000312 32448448 816595708 179157878 691220070 828543113 91735777 802217137 295289859 675627932 791436564 623280795 563964411 419324751 72170262 559844072 74150364 664860903 625565058 376371463 187303312 459405715 902884884 446372627 896270186 157397286 796651362 569383140 145665454 108835083 163866453 827049136 9065986 138358720 367206725 970681969 156420443 667989781 786164570 62454373 258762226 665874427 121817407 910345535 581540778 978404113 499015802 237593541 256483144 34539287 748472574 545227441 598500017 341670117 664260642 273608465 701937629 724370759 840814920 985673831 591134601 29615407 631126081 574090273 434689295 78135317 836880211 537056726 740833779 875024825 174434826 840268781 205121021 358672917 853086727 393016650 718826198 492320983 477774010 351215765 97074825 682684462 307938111 328742416 45724990 806200626 401682146 876068809 734675160 8560676 346146398 928551605 541624018 471069331 556750607 705281393 524381215 845206383 808723757 161377485 624838237 14585947 429115656 300064014 112742968 399255665 424128962 596996054 522394817 556483355 182326207 380509198 210369666 309025085 654423880 160944274 870215505 494850734 508955477 31239433 937772756 637827834 250594675 406076848 790586903 997383665 704561639 950755278 79619451 838068426 347332869 251690652 489135968 713457523 695548965 588910995 609152824 188762820 295899882 818498696 420833945 405849951 542089059 702814985 786320047 18272429 744250201 382451904 723826849 588083765 459076712 927125138 901471506 394180842 137319450 804238951 883367763 475520113 887502504 676569538 982223631 797893926 956092173 785776676 359259965 708931074 209916206 253050505 639023246 11959822 824035868 660616342 130973215 773724892 951379058 903185115 458469870 229181639 365267312 364151896 905123776 598532897 751552731 289525910 503193366 718868180 513458700 784377927 8531037 701140956 255960944 934744203 78744484 23619866 458908630 340332767 51728391 448278595 233592852 882850402 196469840 707163819 210961627 336693561 756298757 108534040 137235014 878349431 864490971 610857348 803849152 361834827 15896493 150015104 122517192 200077458 738245805 424881359 686457659 963327591 277408322 978278379 80304383 394021691 118211271 839193922 925923633 52780174 168813756 657900863 200521599 61907242 595105525 807228875 329974094 588978601 277406223 274225426 101786477 856402908 625396988 87139446 391135202 282710388 509584292 545958794 83545030 500011388 147539976 971081320 53356470 203012416 651542470 348720202 673649871 965696939 752265551 27115735 648235943 775667937 999373435 593807826 866857048 449423096 604901774 598112716 769352158 465928946 617598455 770462400 631501416 847336839 923374326 78786383 175357048 60764689 68080621 248118833 278518528 344882315 297686795 241742144 57449311 609673433 855632053 924862812 850645261 923700214 653263659 145001767 138831587 104942103 925904673 104372910 360598814 454543217 677845904 350730736 63844994 600905422 979948761 943312966 375716310 797786868 581043091 144972406 336295134 536858574 258604215 337827825 253744976 977879395 757881888 752500729 388598064 968418059 600294887 477959026 478222991 791619024 450687651 950897779 980843374 102390232 222976859 547025225 524097359 607475737 274871277 471669814 560360176 423226763 251826488 134738075 604944356 24440576 332344808 563220946 290410157 913038355 604905974 701518336 259993656 825067356 301893165 679840543 371956553 539016116 852319477 563849866 442895812 762185312 574517431 842485645 522535607 937887631 869650464 434725742 601613686 209651752 959941710 407985369 989204027 799687448 676291690 29659158 71728786 789445896 984013739 638810681 840462151 724621612 707108325 281530091 39996507 7768500 410806099 87986625 985249516 258966969 770542269 855740622 394598828 472196465 988275379 518319548 802438698 933132726 223209264 360111805 559806757 33614566 291830558 333312237 267126446 617613391 79281913 578622887 882682172 221529744 907716544 420957507 726426970 60057310 731877517 915346093 555877204 795090371 401385302 975114794 699003457 607077879 499504716 660623488 904454281 708947302 796738183 464845012 12577039 41594601 613618152 509394953 435333275 334225162 580966832 208506855 701864200 166997541 120013814 268232133 124718216 943758172 205790065 804597736 313584032 183967715 678355549 761768461 940646942 291112506 61164374 432605770 387087232 87920034 117721007 615593725 435368421 360723574 444778016 629964694 3255844 937112626 211667490 977348055 256609011 807206063 166640221 82071673 871016096 356774494 351855325 442616008 323663825 816326149 851222824 104163926 308187892 636500501 936606247 126283300 278764765 827908632 216041059 470357618 786868097 7503925 126886140 537588714 146296854 183458975 481703518 330669465 570948635 397417358 316266864 427478147 300152622 781254786 814482222 284595350 891161887 734338901 462636761 8210622 535432817 848953058 579845317 676630192 381190947 874560050 391226175 378128506 642818387 865515041 621224328 68596778 475132625 271396374 94710505 107212968 173881350 340908618 151755100 240204437 812875662 634231800 272654988 624752981 701980391 617705191 503353375 81177811 618786653 563597017 89553990 11798556 40298294 127202105 399302175 490521946 275213188 296301658 137204761 438166203 756862115 851038795 482490140 74649484 851903182 973724246 809785916 319814776 546286850 382002727 828391261 590935513 379023405 966233837 338250480 967545240 480991899 61783222 438580947 511874159 969504929 542246267 666017396 896139081 40312171 57171544 299778074 507680298 627466330 338197156 146118944 900987968 446491650 136951864 491842018 51066 546678173 741662647 170461760 895214412 196355568 476086755 344095227 551573294 13717349 400550038 600574051 411959798 442578956 674250667 191081208 836565671 17587936 876649860 222533247 289966653 140352105 849230574 494692572 689619996 694939463 76702360 552368810 930727639 906221954 537725442 410732646 464424113 54910340 136708891 596089896 927173645 606680331 813502392 519784122 951126920 992227426 889961541 57985952 72210695 434549364 384630560 728028627 388269128 713284304 541807997 62199026 341581485 813652953 367233590 434580932 927998078 850134941 319660761 853277926 948970236 324992599 576323910 615149488 325716519 641978837 774360746 994123986 950605662 552324522 444385013 345677287 372004556 837212549 607390362 821252244 379442361 368579816 358218658 51216168 150133132 186224832 907544284 222953220 719690833 425794638 177509558 138159527 73556289 39442347 342737504 103328586 183394284 391206500 999805340 199796140 440107358 162983009 790549445 926216878 621036482 852142339 223057953 348679581 364313505 836546097 165646852 703724687 986239149 956595420 631962854 675166391 177577639 268061337 989219592 394709161 594135536 774347980 367479467 447706869 444920892 840416640 320301786 227872227 918928163 365316539 630877848 916405833 535706027 359341178 434763981 724907642 897929423 662405842 246258505 683998647 94437152 878427106 205612072 909812633 223922182 656596237 490116110 251424662 632102399 587814796 349706966 855631362 674973952 268535142 910989023 87071613 565379938 159555118 380926879 279259510 212660546 715849619 897597039 243857064 949996553 263691413 605020357 162933983 212239735 637325257 923912485 98631218 473477946 348246261 88359699 848585901 533899759 551704503 262039613 494985210 561390028 767162740 765841867 53262770 596373598 515290854 642259124 593824872 463584319 127979749 184265936 551170511 913647438 823466928 397841003 602627247 830769232 774134177 398551482 116956450 730527746 186216381 99106082 310380935 456543684 370639888 675816307 849659279 354183764 54376654 564945941 880144691 828941345 747410967 16541936 186130046 333351670 815875621 768175522 866091369 588623840 380591892 762084752 401212011 267522211 19286356 893269890 54662929 771763216 200787235 613137335 496851330 847775631 796527059 474528412 597772462 364020528 153892296 730658001 986671851 404198254 265226219 895113101 466906631 861673208 797745514 480840504 855512182 673121853 941619553 638784430 38153778 22241379 919308818 180193704 918818641 494638914 306757028 477992998 565982596 813915577 999184391 184728428 154702701 742484286 992357240 297057682 315673430 266760129 824392061 91187998 208974549 422561327 279576640 590581301 308902938 301973437 456164876 510339663 2064914 608700299 789527637 451596649 746565468 331713802 797125287 370137368 878100388 970846559 773595238 838639520 617409082 633317978 357220277 319844127 540477118 211235019 324824408 985883177 123876234 180059418 819240829 555056897 308341593 168425472 101852364 363481374 351263182 722628157 330704053 32815403 990741826 166725610 746875118 81139814 148000975 965817454 605448159 160293227 933365269 419914786 65077481 281456426 824186473 482386515 348549420 66923792 462402598 239653838 322630816 894400889 500776146 883097286 277874116 49641060 349996236 349149509 931469498 969944779 132388526 597108025 21226557 784848989 204142648 524069152 577144408 87551680 775273569 85073163 430394743 526678721 612861247 272699053 491581630 296692043 300545911 876844092 462354339 998887430 707392803 93311410 29847260 66799666 876605126 76743712 740540256 148436680 927734272 446097222 249836475 530295361 877723515 673230743 750062814 472089596 632968815 732105248 210736437 138937187 376582233 919064892 540730778 724252901 215260 272831664 588010475 692259224 477327263 119166722 981860732 912660439 859142081 53747212 363128797 322390235 804474068 730696269 91073379 129924144 298246081 412443928 607261465 763809673 364369666 294663608 273845248 129951772 548132288 509740162 782859316 758915982 657452196 739149223 276467693 675756682 130488258 744075342 843531776 393913048 560463597 898959539 763703121 828707442 209645459 755719563 558671327 711602485 929692654 426790680 60266265 265511159 500904078 253282006 385301170 754909750 77129893 653936106 647335836 958101822 177979768 110068388 572322906 438663367 639834095 909061957 453404834 274097334 79623387 151818619 266325404 584756885 467329025 385039782 954271566 393427741 136349998 76172467 244620368 964395499 640891833 508573345 118624175 562115197 801319689 300900697 97032119 463165934 157304875 339535656 43172939 501666705 785670909 192395660 323767434 140990364 821910567 840419643 7552099 467777578 265265759 335697743 141736428 496293338 419325901 961589197 491123799 803407208 379694329 292940774 664567346 61614867 519252144 595448391 72245688 167311846 954343542 316684242 15842043 440290788 967940484 619333051 616716935 538355999 215382428 814346759 643961784 258939639 919026286 357234860 788840405 265437092 590730234 264628949 786605493 475003516 636741775 560884040 46296958 327290279 654897953 716978390 59112036 653038433 344118325 216922492 867243457 698679052 156532686 683683562 107211052 97413305 535287527 881373980 650487553 889002323 749882172 799821029 250996477 254295138 365590627 161464631 201678531 343501482 327303556 833532216 466676152 428369633 688107447 635853511 883809908 256997151 734180327 367218421 267702139 868007755 947174905 813155027 740357331 435952371 10778927 141490212 834166307 132613540 518724930 819138698 629308784 662945608 148922854 842379505 836199364 553126658 284149078 15150690 798492319 724881947 491308192 286351361 404023827 309811959 735491313 368464765 353535121 880459716 475189662 410427346 967041780 968617645 588066725 763228071 2371812 840428453 875603726 856216216 744899524 67550093 101569933 438878292 165722671 103244919 359051327 643879660 834921438 54143965 426141605 456186277 523291079 841018270 802389721 215580520 151753161 992671551 82201616 326579272 809545490 466768185 870679770 786193385 40696624 753517282 291002692 687127776 557323169 125200044 312457891 931506190 919486275 851657291 170205168 509999254 798310302 738261638 504858210 713316207 813849579 679615502 771022509 617150738 136475647 923247935 612464707 124599918 263389615 978529177 606114398 265901941 95611073 196903842 622039287 526605432 812978788 622536826 335201140 612011353 264525765 790151765 854214912 197176392 722747460 52149906 330646981 272533481 39183846 650499966 531125527 148590387 589376821 795097590 520254895 660409002 323935038 119136437 944783939 334240587 446102206 839540109 961527986 952515821 881171892 838852377 353023289 547922335 741938023 909119207 18087079 831718367 549820522 1557462 988317552 659574027 577128331 309987381 631054143 336873113 913527159 619877688 66248487 239989356 883248227 713620368 784806470 85711113 893784342 147739290 434238032 130716927 12766964 582198377 459547310 722361941 574004648 39477924 157969782 804322924 249664421 547226350 233677844 343992233 621567965 733133029 106382620 271952491 843229536 247514621 778511254 455221793 13229526 960548125 803741459 159469391 616533861 926842696 614831865 239444010 409048879 432962301 656160020 869833509 633372016 669446354 912786322 55544560 688089520 522411966 639340225 111629217 216141091 21781221 542834279 662471518 113799151 47897543 25411177 938551387 32691287 973121698 984301739 448599885 148084347 426631859 537330896 207467772 217431825 17132945 18347533 680577314 195035378 596640221 484213617 629620620 401345320 958617156 757596038 827322742 830336217 198287221 556341359 467583883 378667338 265815662 699302426 609608674 466301137 747503412 468886373 457328050 986303357 552599235 274709478 411044583 273524370 478729778 138430440 242082919 27691833 437450909 630875429 776315988 692115349 512019393 67030841 559173326 354242747 531792089 568662591 497324910 340032076 558414006 341338170 244092322 308380878 67765499 115947387 720900102 973598515 511230026 375514678 886158696 110759376 16224591 160376870 59368988 654650009 650436796 117120789 616593451 559558298 996317383 724072390 675491895 369637360 282084028 586336983 470147283 310863187 30769802 929826578 124345507 685348396 919581052 768608440 243383326 840155113 963843925 73350768 939844719 222484917 761757597 576042976 59842999 403802117 425386634 50173736 506070156 455421535 639737693 109325196 585016593 416157186 201076885 799556505 75353486 90332327 62640492 426139253 354315415 749189689 702114450 128690571 470028448 227572605 892218722 376067888 667293360 838987313 632455473 739813684 110565642 439359329 750614800 653024349 15581765 19195060 975709069 460121292 579655489 549927736 348398897 51551258 250098818 810701237 880600741 231520574 905974438 718942403 42800172 651887377 286453413 156766092 526358678 489202393 334126892 300182131 663095550 198992401 310112016 425786895 421764634 945788419 956991993 996193902 214598294 681746914 178516366 358564074 14560458 406918809 963593897 770616520 884923877 990683813 98838682 715850814 612562447 69710679 697598515 18076502 415380824 635157221 751522300 1279426 540942869 158119825 290406469 913960644 470177310 498607809 509999489 523309394 559406045 73943981 270730410 241810036 718101840 748483266 200418867 174514623 996445775 591079711 975626346 149055353 590951208 995786443 673085017 304660330 478917073 556090000 318677938 859330826 692010571 389133452 943847815 169622968 470059961 145917829 481232921 236197128 486804179 58642180 355699207 677502678 566233160 17670488 505455691 727682026 439609739 733631804 412850003 541350424 144216775 14188979 629487906 146302446 383787492 563211643 610438565 527198509 877935431 517963511 76674583 897599507 756559552 302124956 363354761 439595875 225669398 515530900 325029152 388026864 670272608 986260858 851153498 319131981 334406561 312092884 933678212 17726670 580315580 110208729 91675158 355664876 793600720 582362565 101651253 337018153 152624060 416945194 547941417 215093504 874738144 690864097 218703844 327476365 247372477 381039771 678832184 956859449 62716150 572538812 933241330 513230103 186790985 289290819 843475163 845808814 200787291 47940371 841606305 210381595 783925136 59132398 208380008 41956610 778106094 170515041 92966361 776632368 530030588 79300624 387104 119450006 650398389 938285519 256133812 660055468 192344803 982361947 21132661 69865421 419155835 465619041 572691811 67721055 170710820 569668063 544052035 207398319 609611025 705730449 720042342 324207633 191979925 933195108 333874706 53564473 431898857 399706480 644040601 39408686 944176506 92596029 2482736 303208952 582882096 285396573 93595428 33964189 510201964 313554091 438542983 707652711 854754638 86781841 694747770 887114336 383855941 907133876 485809403 315833511 663278488 623948123 938091820 893061125 498848608 617055965 203792656 599746228 184378009 897679609 323601586 874046944 83149100 906178855 228758313 62490196 98319281 38859335 937880871 497371790 507655281 478369728 239044599 252227405 128447206 489414243 793489786 102622169 66314498 875753658 960231514 590924484 485490097 982612647 231439522 610865098 914529174 90142428 839214536 882557609 688685393 38063809 657284477 546846694 400295588 239199559 225412691 552047108 295025161 488912156 608144171 700109691 502110197 459147412 136662975 197046478 508834347 740529489 823310644 191438769 100525751 483628210 650787341 154573085 70845023 667147404 94432606 322681100 501766618 323484071 815135350 17172389 635490366 359467015 659549759 833674690 467514617 101408300 1370170 244923132 420746109 997614114 764293308 787344174 423345612 149641378 267235174 939581540 698123306 815996412 490405477 376481716 278355835 525665413 55483503 27843639 693107089 823684906 338918545 640227928 117683169 722625330 212525268 961136780 177354044 85826494 288191931 500111324 947970250 735381250 541138862 681073277 303321192 857749695 291639944 787588052 538420714 346729041 306417690 577663200 705128207 893618363 381800309 400838314 485252784 238228807 632062712 798827756 652208752 144251289 205326624 564147126 291288891 184231259 750965202 809549099 40932244 796461271 991717106 805708897 18768106 580411456 381205539 64962357 770162911 286030304 599135243 187196810 485843630 992910305 521463419 354599370 6648418 85685905 31580957 571110853 657517179 929017927 717767117 248255945 818852056 267167315 610447043 220497297 369407681 441889744 401696184 960917389 445865581 361326850 440606071 266296090 919588340 582641255 113324516 597639067 457551125 661277737 123591641 456571371 777722118 611342483 543290144 506048764 982302550 898843687 181757942 863710762 538192349 4556276 560018312 491585858 633205183 442517806 964399133 132301053 717847435 737649008 145515565 112983602 705095420 756644118 560097049 219288279 872054112 347494710 907374291 162259424 479415751 808956413 958086879 895117031 593216085 402687319 947570644 614788804 399777262 780366798 372167393 943629162 421058864 326767655 476862252 9160613 901536474 921382847 312977388 794247981 748518237 542177203 955995347 61008354 522997571 972125974 346926393 429012719 678094930 519600483 424728748 801308334 3074023 598639282 157985634 974822152 247655022 705683915 491019545 496857609 375527481 858941167 416224388 122262702 419005983 288082214 179228106 468579129 823705678 567525014 269236874 866405964 752206466 108607184 706663553 522247114 455378823 659663259 399946030 478178912 586178616 249952851 675752174 734539962 959617011 158402 64829155 977664431 34800299 440998686 995829557 532446046 392207518 184231306 476515456 454098188 117573898 229979032 410973325 467749440 172405533 479623056 851387508 499171062 435248606 122986575 194605681 545619292 144756934 931601415 469670962 808351813 419450005 907770370 944902165 376023532 134675179 733080377 158326020 328229599 886557276 695811956 900317598 868449036 761711232 726984319 577927299 684212968 382247293 517699048 545395621 704989783 144064079 12583686 807100526 965913297 798100532 810234197 364840401 185866830 23125104 385927249 684422454 159090660 20329926 903260459 921281594 987927079 127482374 213453432 486640854 155458427 212260349 985001669 620623440 301078180 191149882 359811688 553592270 834177809 844024764 458426912 412592828 643586854 50235202 806215111 335553436 588731390 295303617 861616918 642351392 113647126 881751709 65873159 279594603 299742515 72019948 24525310 774575575 373764645 840499108 482451507 251500972 198306195 302946349 74400017 9422347 650603930 613183709 22164407 697219631 988325869 740374078 854091229 229822701 978587471 614554993 78331559 888101885 949727524 616877620 857054989 776706018 221754784 167952801 508592999 482751181 189868381 406083754 413337999 273600454 309076790 674315659 909424698 456679695 56789992 874149324 145642117 562263837 612817751 526658385 851041911 956765750 837715580 944525758 848328187 302988475 767101536 993886787 353794548 81084674 188980556 634079749 347619944 100282121 282625184 966165054 656959059 165566329 419080398 538965936 357042 221825782 733352672 954145550 379641486 563162776 617916523 967457097 649550956 582343407 691413811 670315431 61617396 582616861 610744963 329790541 479047069 904083582 248403502 253839711 592700054 668456459 28119127 482163545 799645561 885744617 983005765 393020984 349773695 799361300 477935005 506446469 268745741 577381498 180859712 124727408 366606074 599645279 766606278 410733484 601676631 263234147 882449133 673135255 16226029 690746402 480817027 811560241 915396607 231217009 369783102 600685071 331867266 197428788 535292622 282555104 933454073 354458291 112653017 498859976 580054935 343051400 474498322 830342769 156667343 270579832 539887641 490063565 937347853 444643543 48634697 208586944 647793060 528068621 452280396 702392546 358896454 504354200 607039574 813103285 286567192 915785775 170549143 221884513 183028675 433024489 801164065 680965433 285418732 377635098 975336519 268627518 455877067 387406691 153997 172194742 570519141 715438523 214469962 54416064 11776355 602287035 450235059 437989675 239603435 268962634 760409080 456608428 658227572 414257132 139210181 459869917 419381915 15408117 479015516 107197438 148264952 979142801 512800181 809440907 671017477 565204856 799413699 376075729 16286824 595339626 794992758 481489564 32347189 295527310 686059333 327218840 442770755 46562 213798764 986916149 368618665 248695477 547282688 687807880 495497891 728373340 987656345 283564013 146188438 889191863 23943812 726102698 670442310 430454908 134782737 221517460 409384158 997690968 921443012 644376166 842214355 310086192 84592344 646096992 913347495 757197627 841912785 523157241 121024731 786147411 294478673 883273568 966737698 7744242 495204348 823543831 357896092 710313536 396619854 53823008 342000829 867831010 648561539 82589758 676911857 461739303 788587793 915300510 398537790 77818009 365095082 82019472 858400678 868758540 734529432 672773968 64416760 435695855 91707760 980379420 144504153 440288015 314716919 288571051 729026086 51805154 465963911 58774733 128479336 838340979 936330664 831658233 666229914 347185615 345109108 931276213 53992842 5400664 930399320 680359991 962167144 862957278 383353933 727906057 810456730 123868258 397550370 191311753 671222096 250626966 419001843 732621348 559480047 561067561 162602332 757732187 158346559 240202687 281004230 205925007 403802819 439308907 948959128 680610030 81108399 902333001 85191643 797123618 394113255 617127920 68850255 695420037 159949974 814403265 476152658 905857182 437014074 764860764 858929819 123847344 360455797 794588197 54315260 303645075 649282547 972707355 818525521 724192110 550675915 372750958 163479426 285272892 582642414 447331735 696364553 584277748 616599332 58840428 630725588 751480623 227491091 494619052 313893597 827085868 328191503 224450176 463054834 875709656 300424868 525792142 323423764 60274166 432998616 481953400 449324812 311437431 964136505 385332597 6198291 575125287 576520798 405473256 886511005 460827115 470886139 422908674 488229917 255261101 105477050 39725144 212171443 943880568 471915551 553122602 74227116 501317097 337813257 888412337 577671627 512202435 402659972 328662677 45912300 643860260 337665141 205628676 530601370 366401495 792080586 950200261 436010618 415963826 991764452 776998888 387450416 631770589 893087302 714449638 168678163 365318878 724973444 377056887 452992820 818622868 974441264 90928959 859774476 305577863 493306360 851825831 438669744 109424269 766000970 410522013 282055864 636219750 624478080 850191101 287077331 251209334 825658362 594510464 825006090 130431590 40312673 131926682 927705573 775674924 308520396 734388062 649032388 652792219 519923305 665157546 249106617 992071797 981923984 773110487 288172778 877981612 722488401 796023425 265850411 440426203 266348962 706040260 607795766 334921449 111951266 105048895 170585274 385363528 955358702 17978973 778853 100368504 523569032 938817165 670120978 563650206 890281865 134811746 730352807 436330864 158085122 451358881 259147515 116832685 719158363 505025866 284523049 789359681 707250569 107272852 937509754 847205103 233959007 604356752 870273698 605359660 844721917 511693221 664536560 740458778 11343805 302505591 670346606 741616904 652799722 421539285 498803669 98422859 681281297 125801277 507770874 341541503 835473186 158188904 751995107 8475980 648597503 376097632 317386291 392481007 33498510 850010601 163221761 931161130 865488424 705111063 108330511 362833135 413605277 636670986 564133308 815610696 561145092 508385809 773374390 716157524 10388472 829698842 290518802 189822236 29362653 514345541 190946197 886608194 83059951 624996251 688229804 103923497 283048765 518927270 313767205 592588771 788190985 821804310 891180946 174456627 619743841 55132538 938086435 821471097 649619799 892768912 632319356 616916005 202389703 24060144 50334574 472989458 783149316 613824953 345731609 141749225 9311890 466912370 767084858 453942562 431339681 210828518 451365751 562993044 289001636 555748091 318565335 80972469 387845524 838481019 637249645 825268377 719179450 151218489 113160904 528754260 455844685 861117386 410031191 826248639 37518682 316282043 515720957 481492838 136323346 346699663 339876729 578764760 823840309 417448947 885767757 541033680 654257557 431522605 911148936 507152622 59483918 735463975 71428678 169002553 80039353 686379353 122565010 848058759 245964903 836749334 579931427 705475911 507898516 864886236 879213500 701050995 904413555 606973453 864561167 424979854 513224439 516070468 264029512 2032904 935519740 693813098 869739578 915800661 584105307 506501432 126830788 901994252 486012168 828612449 771286514 897034772 51895863 219371972 72033578 725041226 746975698 524738652 808303607 342705272 234162548 562535620 649738290 429211217 944634494 241751427 812149937 846910869 230947348 563816241 540134566 343788164 728201249 835562629 759136390 436141827 736498973 239353083 142215923 364957606 105207333 36157794 568320227 202770816 514471489 231404598 831191777 191721218 328431777 792951809 92450822 97103253 651287752 374728391 678889312 588337490 747345626 888611176 989365940 118043155 409458292 652138970 974071743 661418881 642241988 709370107 651075272 543790124 7070105 877324439 153467372 762478459 357170492 783478903 832007244 293208576 415032743 707608988 624083072 955983716 633656581 42016760 899470114 285250191 253112271 246979027 603399552 621360307 662599618 730872508 847598993 843567545 576246849 585209498 56085708 925941870 742497526 380846678 675033320 809345743 764047078 833133718 919331532 263371865 158038564 880608976 301242434 519451432 112538689 506758105 505447782 705338457 592618607 453823957 21127880 24134830 228852814 963070853 967127119 603783686 609267359 767765009 379262566 753861066 371935031 641533626 499560456 859068390 464606743 721083554 338009630 542031458 575797591 620957828 674554409 710276334 470041906 810279190 938627926 67532988 509433919 221642357 360036407 744255542 680240303 274425536 748046471 214943926 856157434 422818558 615508946 645749426 655470922 275738509 212387985 568116946 610626788 342067798 860850698 451531615 185380371 760509501 516862091 388746626 17599248 324834320 59350206 216305877 908422816 33946558 759269547 252445715 33206335 184274168 432713241 3792372 957701440 429680834 640629953 370649920 701343852 274159217 982105816 857018492 989964132 545642453 516814159 888482816 790550050 965629872 758873793 322869104 58106888 251727131 198190052 624381984 129309262 116241251 509943481 616405915 196786814 946572795 704754530 862072871 890178405 358111260 792921809 915603662 88338937 959963678 951285911 485470561 910316945 266438841 567289253 385624374 125117756 249920769 199716800 617555535 923418536 663987403 134021844 546306297 472943745 372400918 270644762 173357748 713525514 223285335 553876951 495835702 651987991 908663554 287986346 866251015 40805405 240845649 291589698 65551706 894088533 883089007 215585831 563354431 485806230 770758723 709573002 338254726 411756397 855824494 653392884 800158062 824618280 456574966 130765906 165425293 352289639 298292163 266238200 744175989 609326169 467344891 513159045 698840566 694259915 229099685 116347052 287292003 683723138 623911019 28160152 619390570 390637160 759125042 430968445 701624346 453089599 113359986 625482358 44038708 577835929 222108193 438541963 104427625 139075590 301571506 45574087 105740274 313022963 472108630 336360423 250122820 652690827 380470062 178977207 186588809 394663222 606120973 33395410 298775327 638086231 194369370 947586636 773612265 972880446 643160204 826538654 356836639 72702691 37032406 671257594 112490845 501047963 848615449 478275111 895045096 129498220 687237001 619100704 987300787 506818316 876059880 315221430 430697898 217363676 630993840 654205583 460400968 732332670 8385270 445697730 253988487 529290328 494588893 200768599 710859578 692154936 800637105 17608653 249871643 565105862 844892726 56323596 350482564 668311827 696758739 704063022 919694466 24008566 589072104 414758491 142738220 801864471 395973597 698660477 509422914 414759289 176243313 906950785 505356614 320460518 491730302 218823504 204523743 689828515 903975313 459673972 138989071 107427732 904419232 8100431 81105416 448095969 192698165 405939486 258733565 685454161 146907690 524593323 46115428 609310542 696912237 831923021 376341779 893729184 623647999 503780864 588991147 676771468 999451383 100198741 475211832 67020980 192596502 524032070 229636979 826754701 676214223 857926946 177179178 470107464 494997407 491901589 759463270 793459125 920211070 810444739 113539950 363956008 503731053 846399136 707905961 205302803 359955833 463453019 417880009 976584705 129416847 789081551 343227628 568241006 13847344 749607754 97238349 366025726 442776119 626969443 688900300 558504311 113069387 630912999 849945443 416623652 730591339 43468992 930950429 599106560 676998173 21128903 561576868 665543133 321013413 481238803 122275430 880910084 350992221 180705186 865212142 843354686 775725010 171512417 790708889 574968496 75312631 821833568 637762867 803228100 595825699 373767331 634614888 137792541 205038459 441563023 851614351 904434504 950978730 762121493 153440449 352833511 632836403 362795571 702524259 597302414 807091241 998332126 404147412 626394642 582839400 111448839 889680157 59373064 363010854 558408444 821204502 497489894 738851568 870434563 45183476 776399452 399122908 42193599 46746718 101085477 30570069 415568354 456016035 614497561 455794290 394751119 728655666 540090540 355019127 266293964 798908342 372479354 429619539 879260282 136045068 670640118 751250131 589729689 861224168 795445102 399917767 692134388 493966460 768209720 943743935 739260636 83549937 971159998 89391825 487404945 2954588 294489280 699740360 514603600 26859929 600534566 481166858 740307277 38233309 996555815 500981123 902417040 137453635 52899353 234567136 446551479 207194017 619238699 933669660 504783576 994653180 290763264 912265206 63796315 170136307 592651689 419166572 464651097 587438821 545446864 262703508 741531056 128796142 257977162 843689622 123633459 126814795 921424610 252318793 840560613 210970833 744412213 328714123 515740392 506316142 203809948 467691638 768096021 684460232 816585489 270291081 226931854 566974421 478003130 822671509 579176386 59787953 394232356 666965104 51364703 526730917 364699111 993432133 379538978 856652282 42466305 736480136 529550260 589272231 991310725 209585536 494558484 48486736 828218621 260405931 390398942 292849780 772339462 965282428 928303438 600646492 974901652 67932704 111222068 330746196 564284474 890526135 715056526 217140500 245054754 938142347 705753044 938575436 944435321 697042966 711977538 587493743 140278281 450257351 681185186 660653043 810568798 858131089 531107722 326514671 189512228 413045427 254785048 672140459 390040642 223339571 191335789 400992423 712076466 357343879 222288750 950275100 406407508 123252577 348160143 375832815 32924065 338396322 814108656 203615185 594952651 482491809 126976146 46092323 989598029 437339452 897405188 72755308 892124815 613239208 945698305 260145519 926519801 964587598 805687651 305176682 822538094 101825067 28485519 556925686 462696668 738857324 503227376 723116816 463332227 866194719 918135185 720953124 143507291 754092830 838919993 747251222 543303661 3345257 410772111 907833907 620177832 325720695 23058660 364281566 462207785 44493079 382501353 610044834 28295744 506806969 262606368 165001144 119007460 939033287 335821073 378946023 927546592 631185476 497622599 578553399 688234261 116881159 299624213 700697788 647966579 685405117 875142351 175729114 647937285 897956952 505693680 207885655 289884517 851863580 525416050 24231393 348431846 495139628 502217216 157914233 169545208 100043293 824343846 403724553 79353263 587934016 918854668 711725808 299664914 167113275 619455759 476699838 302548180 805263233 422168525 242836956 864605178 803748274 181374538 332445709 350368857 786918213 707245677 899069289 886678425 21693472 324320832 212697937 339376291 904350002 963781035 574582515 857663002 229855287 501898739 761065688 78948993 940116242 824269717 331229451 699051268 762327977 839603322 244119050 913160112 894882328 935503359 535438877 347497069 261023811 56849033 213793740 462785017 150202479 690836837 154874403 216601080 513193005 207797692 556982492 870399179 99185453 809876514 422155981 705142276 374218066 822681246 303124258 681496284 814291929 332802863 753254247 422774625 556701054 476400073 208941394 594539357 834535204 4738295 20110132 596692000 535446400 221677963 114860694 243600440 625810896 154871992 686143715 37729511 144651001 97172905 175620851 735706190 509250697 775548931 42294596 234121768 440239593 246318460 300833705 770581013 760771617 280779281 34794230 67399422 279882838 586474805 449840704 969867532 684731012 850250877 691475343 55221510 857496363 979065304 870816416 623766910 849451442 95246144 912431494 401485269 542035072 335858055 867733353 440413161 40447183 304216802 653262824 358154451 422016515 939629082 961350263 582828421 89035840 548165743 653821761 800861329 680216879 640533276 576018714 269480887 928070208 532589941 49250760 710223654 188049580 313786559 916993071 462661079 241795137 762015285 555852038 936866834 123942421 987328059 650804123 760833785 390214805 215039776 930911641 877918167 565433798 140924053 764479810 633041115 809345392 740858484 988856548 364112474 766836666 674317840 190233320 53265915 134605779 851196942 108233882 319151281 981066437 21128367 356159822 640476485 76557621 316297017 73444483 290306663 832603490 718833503 989857530 506514843 389519071 55651045 831217102 784757380 92745747 381441195 628226278 8713171 815195906 746881218 329595284 321485579 228995720 605060660 90695848 491388059 532298284 77184614 360519738 80524597 991465027 768347184 338038254 254845925 38924289 326730074 696542289 164234760 583303375 130968224 455674975 462254615 352708248 352472088 494714058 356110291 687787948 278970336 352104487 160954859 331074575 622722785 553758962 424620089 906290709 953607036 18661041 589521956 465208220 745480785 392572017 824955606 209224353 483027970 839636056 434596515 74126573 442577567 361443845 407573938 802882318 596088433 429439667 242384231 490573322 617181503 879691374 152001062 694293900 192198538 831636214 251858758 687071670 751487513 377657596 719009263 387843777 70706835 527690534 83392332 249473959 877181402 586928409 387628354 835697383 432432393 219724836 814561262 824763633 97829864 790153454 745316363 396251361 107275172 846221976 810633705 526801468 898036576 352777140 563799096 106556407 633490597 506514777 159343354 776918180 204579379 275980967 474158302 707649569 785443523 26780655 723125941 616371742 755027086 819461098 66826818 50444252 10115977 66881941 295164159 5596225 226187256 347722839 921296567 472413527 352505859 758735817 875638344 643002603 410056182 944711963 282723356 157563758 983885751 813363912 951971856 67704617 261308360 923277023 281320673 457959203 25890909 810854956 313097755 655633672 963778507 968268533 898606530 697796784 918889979 139304560 189366262 951255366 941453810 283618601 812593122 94525658 468502084 127325522 883387989 130656015 231868453 305215587 859024958 400856521 56321628 84306630 540199502 693489384 474849616 983221456 860221795 77104034 851834990 661036237 544023040 764545360 920560533 244485484 333584039 19526029 431882401 687739611 635493172 438329017 649684401 26706995 136830937 408373780 453530021 392220368 905436079 789574075 923538356 562783234 701248299 958139645 400560849 614413959 530628563 928068673 272708234 982591475 37607882 408940368 627223196 456096188 874231888 114981144 740229961 802650023 308082236 936376748 872405182 735360467 27836008 387041227 791605480 808647516 315185258 851611353 765957447 462667383 860435897 237107422 65058829 7848104 320348503 452153006 398166602 108370588 299578382 939379905 55627253 21472038 773939351 221828258 312032080 197270529 38486187 206544441 401073409 83607432 179528269 615594695 904064016 352518009 410579014 860618996 143571233 662734109 803611961 812483011 962688718 572384974 138544461 25433054 377376857 791575499 372793811 74897053 537190675 294332104 761246696 519568817 612093504 184465869 971628 221642567 741168531 312107374 891981547 161334034 428147158 850989884 435772802 292127168 759896148 349786202 413222210 353671284 632858311 705685812 587097089 244129750 370068634 887549865 637304595 219999184 580088261 974553067 200038791 609207161 38175922 484750067 329600085 212255851 723677015 577679728 173070710 72634120 322970190 179468451 381185135 255273392 827970354 876628442 640447707 538082140 818423293 386224848 659715847 555610525 325239626 750739914 665784730 490761578 491079494 884681830 251822695 325668296 825014529 377285732 677614168 591217289 718948899 755677252 79301632 861041675 208005263 358452486 628020925 156439622 317992839 984976400 998827478 449409649 42956599 68751901 211040524 528514305 559972985 339182305 869854927 436513092 205075337 218879668 834699469 719204141 618174577 756236929 658644458 457629891 670322797 112825831 505114281 682241995 259632263 940029178 466740834 463174508 634932967 991049760 174301454 185386898 140117754 188911727 847403273 2785077 103116347 604776413 620071686 987290615 105597483 410816114 227799393 590224844 151418340 367032090 497798143 38234375 379171436 729009154 131940530 321359943 420545762 217051045 230086334 950382883 252026556 435802259 798572650 916325950 134631002 12253154 617775487 716295165 215207987 692912555 599784912 663156582 556637893 38473514 695880540 143345980 786424601 422493442 28654402 660350849 905903200 576753158 769323162 664757166 395462063 47773380 105668768 221849129 819676352 401861628 209500620 433344249 538359100 376778184 896316724 154745317 322268092 285277584 959098427 8346920 80830653 78290049 49634317 416154999 445365913 643257701 395544544 572512548 810876391 201509425 268216321 1710861 373383074 722628074 89971551 767408393 899769775 25233199 337317583 737664621 381180376 356070201 289068708 819538768 996339237 665661405 520547865 516079976 548762426 503873557 150401718 287634350 562277544 689065549 160436312 318957282 393164262 749904512 518646236 539166006 680243457 166354879 960486228 127781212 499860242 827470123 386088648 813294892 564784549 531866217 375917 572475990 39434724 698171248 564491435 348815798 440241554 91051422 29557463 734223541 233651974 778409999 554624197 106936354 819283229 726674559 559411454 789734056 968008853 72638124 250416635 157384445 277803983 878049562 665090694 981157946 794690830 524324511 795939859 286965952 348644722 956061217 783062705 348201760 489409139 487707366 924954609 151010538 133177005 525830846 778421210 560089866 664678041 755588047 992619917 764782073 222445157 578382712 400341190 344945706 757842598 670269267 990950835 687546997 882247331 737939874 595695805 507443812 770024401 132530415 184694801 925375337 287425339 362717424 286436200 276003591 192135509 15967710 829700569 339566881 135135586 386955456 442689916 84437237 997180495 328574470 333423818 868959681 232429499 887896762 966975131 400936290 1319857 133999500 944076354 164004711 198033638 650028511 99086902 957772476 586638279 132402673 527317028 277155231 351015533 55898651 16350040 445128167 320368722 242859331 499266186 928245106 588804576 607478797 947764713 754451808 786787993 907800616 87828954 757732750 219908624 608396797 856971976 655435746 562711853 829792338 241673471 363800053 981560794 167115649 71005097 633847395 580656719 150941580 439398204 58742817 717139844 723967188 497678592 485530911 679684793 856510045 714961046 320721999 932736111 313035659 425268919 793539698 447394276 136630278 147464561 459506148 115324076 89801399 132417425 851481451 611594068 525242146 465404001 567825894 195707866 778686399 630853137 151912862 499101680 146677979 935586656 985848124 120718680 382264326 843591118 188745030 40640212 465760934 727272336 638347385 207715180 255449992 374782932 376824757 960927404 527955314 524417349 957149383 446846262 440359972 561800954 988812488 103381573 843060103 54723358 855687361 257837758 349624348 222085917 154184664 627744835 474021278 453649757 377609554 943722623 870883202 453112668 890157476 626396642 48156936 417469447 936172213 21201756 996671330 673853124 316340706 741411198 263568786 45217614 494328461 550036390 866258564 70101750 720162089 268283297 925492142 818286884 484584186 523422687 608284267 818205063 165031188 543780619 233297177 974697755 470096082 567694800 866669091 26986638 425225491 579642458 567606320 86825311 931509933 789265533 409864008 436142102 370098325 569209108 900326190 659698735 355383435 732489058 185962110 850360755 799588950 803032465 506462855 732542526 844489700 33099581 181273522 771107312 449422706 929642320 891697979 116187031 19723053 50139445 141706221 873710955 382011398 170999691 207171502 812332878 967813234 163117984 840621931 931122634 922768776 830013352 379209371 288391118 613503979 690624992 426566349 835844648 229080691 796287007 398340052 506155147 22337527 956387198 573463651 371902767 118792800 266943613 69083364 164679986 350923237 17087153 134628256 588219948 38453356 336323287 694676601 960833551 558393962 640706857 661323340 554759632 12577694 916110578 19739384 918571947 133098713 756295297 834576516 657469216 428145889 953947907 823674728 105798302 507766101 319233171 988085346 11322806 553516125 891632360 199955767 386134655 524518576 262111113 698502063 790993740 914031020 7226814 724902140 500252632 577310007 657714719 786149349 108127222 162362516 31955573 59747281 527938826 131616458 859363217 368039908 235420707 575350954 425730714 929727343 333343422 117447878 647964027 226269378 263426660 177028782 867786194 675222527 602248838 287408628 940860489 700722062 133726369 837307574 533824309 407315594 955019292 342223180 993335643 783304603 344972933 119662174 518710269 646470752 318114126 547184373 59242227 717257547 581538973 947266674 29633002 973680317 482388137 660947501 850485379 145828428 579348741 10291529 75933826 714288705 199768333 46265034 821545213 685515658 154745503 862509473 582695569 434785125 993253489 672578671 836400832 594121939 495719557 984957190 788522512 879342578 400629186 559683838 346850887 990236729 243032564 238209883 723172658 839405913 62037052 71479896 519005384 289111959 321898172 355346456 929237916 251619054 398391577 180228287 945075131 896966108 580248900 705112496 646226074 932385062 382050443 830141901 607160305 661982601 155978920 564109216 789394061 23733481 859721791 84397935 48122845 208554033 38842550 506860799 272368215 651615932 59297339 168136384 476809200 910491106 291719752 622980708 59189622 220359000 527265660 590052886 269467013 379868353 834748414 780566535 727025656 315661375 222531300 658181026 752535 178406659 396271690 36108391 326844571 918229127 432715928 691517694 989021139 595301654 674482520 316937083 431787948 538585482 873153196 651058021 594015252 623167956 743070765 757529411 100060223 279753880 365820511 90572564 377058616 818163664 183581051 123209159 457747747 430484310 762573768 698110810 840624338 500362550 793547196 340600746 362899047 507472288 185874366 524096261 533038905 340667700 349253480 622005584 908221418 237642431 213154839 723813946 350019131 837185528 9889292 819625975 516851475 710174589 571121237 571342630 458772355 646676912 925947242 199206646 35191212 89205699 74108700 435531123 909513848 157840682 79325544 116463993 90865716 701289091 45960181 929706439 774194565 422905761 461972519 503095288 439080043 676576976 773111935 506845484 981524499 504798667 845804650 395092212 690273886 558156927 566435238 331416706 764388714 859287984 754864661 650427401 755980493 91422396 121942978 486129606 968926406 924855353 955738165 418005823 20564327 381711529 379309908 483085153 146907239 26991575 858910234 747978516 527238284 211796225 808416367 316690052 219435914 380396572 757031959 707278122 315062445 642487848 548572661 72215949 548765470 479582408 633839213 623946479 833634933 318144600 987221896 54123288 826331284 146700214 672686782 787674325 565796671 640959252 55879125 65333621 48461136 783405051 444346681 516801029 197046810 31818394 494020274 828049077 201940856 751419606 607620723 329187011 45111316 878765749 448946136 775355221 137876103 582029962 230444238 473824229 399883611 624825778 831443163 556287967 604815787 485371465 690586018 505431857 260963436 123779699 4733754 905276236 694119064 112955053 789587442 996281697 140450117 407221372 858999996 489341179 904583442 125138136 151082804 727076482 279380803 566768528 258255091 98093134 240889925 786578732 547379036 74364482 328276408 785763788 196219854 334506562 833172978 309188378 615171346 998859651 104888433 907312926 378708448 870496620 217243662 33064957 643950968 684243451 380577803 437782603 162990609 288283910 44770255 551774363 333505038 281883575 555702907 823970055 311416935 108293442 120849969 789795681 719619840 29272133 410419796 668318966 821643891 774165763 25839477 203553910 375003889 75401332 139390868 393061801 653490425 88320768 182365642 24002198 675311683 81033595 635041095 580958166 782518012 27457747 614626603 332598569 676447027 756896968 161657483 344853595 7126333 900579918 68470936 10506032 446641144 828783922 231280752 71778924 442015512 323544742 323650184 703452271 750118413 805030711 396502438 596166010 280887254 553522508 394255889 665099623 522317408 966828232 405703436 168370046 276250840 842711924 49893855 626150604 619876313 148694825 34893810 192030475 862656482 145400110 391153160 223456079 139923793 240863073 920872986 412363336 300145839 489870285 717532935 493398646 137589651 757765737 170410996 997111618 339022792 694582264 919955420 980982790 639095453 208395931 439209377 506532722 902989615 860636732 36921197 559286444 532656619 487155564 358263557 156604249 50982679 387001358 645210754 310131128 923222628 622783882 913920988 234060494 630038257 111296911 901213855 330019388 541581054 34099478 824737454 192034944 168058958 820890903 371634384 221684472 302236878 357292895 257475784 330376372 824169525 975060575 873600482 923855149 416599133 170465411 779256385 555259809 625196471 915473933 986646662 564746851 223146202 170719328 947833881 100007515 625504370 363903034 640543275 688490999 822397258 404690073 352760934 611814076 211049260 272878440 897066850 69997929 965314291 702665928 555306829 137379471 592693811 832220822 467722975 288505356 674757744 87599400 967745895 914135908 173481623 982917631 71642611 349078268 461714085 568393703 406651622 879510807 645299519 697839110 259272536 541224584 647823693 756052150 609235096 231045671 829077499 682326774 573016389 54379819 735141238 533141547 278426667 9042384 244210166 109569927 461657901 943860273 95367865 923363744 958855093 621527737 652612649 946539362 906560318 272035339 812249330 961857506 470512290 202592813 220590546 126529278 628855404 217106813 382098889 683032898 196824029 913287344 19913640 102975206 561116312 564606095 831255156 440494953 542546837 706398540 880615234 402964179 554946951 921923916 877833835 413003127 353505357 135072424 533312986 726323870 802437002 504911551 571125876 169087898 558136216 139741752 584668088 76470561 19174804 311170344 83048445 518542360 142352371 110211336 534002443 329451157 910331026 486254552 868560092 888259282 189324744 401428567 870774321 881564708 451472341 389296884 642514453 549652225 943683394 742583979 529524427 220809872 444612077 610432691 825808203 499122322 650663758 612064169 919527969 261923046 156854359 175845655 408457612 316459505 932176982 841202363 503926247 17874808 651701648 409702435 783893481 358563806 215854877 707939235 569935114 250893848 719092605 105632016 660919119 523771874 641778249 192521474 338303922 449015977 471032097 265024587 742556927 20960794 355668148 767970299 375959017 106556961 772069712 377220759 419220061 265284206 343128164 407766812 25835284 122848267 720915731 606427570 690038262 785350834 264097205 302300229 784902636 780018898 233068291 745397908 756066900 42233291 676704837 781951546 678314974 913195426 915108064 169982994 812128142 181882132 163242276 965838504 395300117 863469244 596697926 576760717 326450945 826701696 963541138 221384847 220867494 434986415 588109598 239117738 717132227 13403491 274816285 978771636 985297088 111300551 936585307 505717399 773483563 601867638 598566818 539346789 225587657 350174770 136642372 958840 770845851 322523685 276384214 165885044 980424943 358777906 144697024 285586050 134184705 146452327 90126799 694951145 875466035 28924649 878345459 392168006 123985669 265004798 796699852 153071510 772896001 549502755 887713225 888888854 46738304 553974623 737409772 556619641 334006395 429203464 478321535 125521379 618636458 680170258 151462018 192838490 204107395 485251538 535819462 579588191 201674237 200975454 678074841 829260746 296864917 398250972 63618527 700211922 44894733 885591857 803781821 663495876 946288136 333628826 293101046 535023320 541567623 565116153 690855095 102809657 62084654 620201660 31857002 447408813 451788456 167504429 969425839 846409406 773398148 192015098 941574204 259797598 556425148 832463296 14221890 705684056 196714274 379484589 74556828 456295138 799070032 41092576 671044426 720065333 598228795 256058648 306789343 195112780 309017840 667820264 499648378 117330100 391000709 684390169 708884895 157738734 638485590 995437577 676097698 674302211 917593905 619056479 223338872 234425247 712990369 842950825 955616803 61109252 863098078 209894156 533837744 791414535 393122985 562502622 981144904 291393359 727137989 290257940 940379895 664581564 385088504 10146528 948928280 437123815 751922169 976180354 62749709 695479482 922797069 744322572 890412893 776132336 185818414 16647238 976975317 501635361 467013386 774532652 235199526 164603352 423785762 968262157 620323463 659936017 402043365 538465862 394316475 911989379 495335729 514843081 734610387 392818062 44310924 404503730 787959404 470931259 113151085 595458312 439745865 623447904 867021806 929325154 575616373 412476828 212395335 330887647 107533646 911522309 410788298 360331611 589945171 359387521 535759150 984407819 718792641 695287221 963187263 38944285 666521944 833918266 104116889 27508458 565008505 288538990 937299363 942468172 510812014 629680523 721486245 928543147 127903908 311557555 556547450 794855325 59696450 775607402 956873410 163029318 483250070 558252541 172844206 265914886 989853607 604837254 77751708 989882024 837714720 678650668 14939462 65387851 765767724 758217001 620122145 371464513 135298688 22379602 346849860 415233193 134072044 189724523 283717820 767634474 504762979 779335320 438206510 958619606 879280376 844952330 861447041 569876955 78475304 685359448 173318002 18804726 832986004 965832153 607767695 340524121 812792197 910348918 997301388 332934500 465931817 210780871 852090382 66850742 227780046 157452477 733437133 382569455 816878154 272855930 67274120 86255812 216422307 566958959 850519226 133441296 9074798 934750379 704528413 412899478 104810624 366819221 729784593 362720512 842906584 417614255 31500396 339913809 378486210 722668861 28824888 70429937 82403755 443409888 928210935 636120234 743671948 462398952 646834404 201041459 326688470 5994293 624155842 549436119 640242127 524810146 219983119 748000573 559186852 642619082 386504787 150002455 259248092 12512707 58556123 250315662 455156874 440716696 857267386 577989320 710717779 297327549 240666980 285869232 335189671 292957701 957953503 865709778 420094796 673830812 131673726 487328648 906177206 464291819 887601684 957729084 853716722 612715295 907689729 210169543 674001742 792714915 148809411 307960309 154565851 363284910 316013928 154209493 641196115 97194473 39832181 487286481 887622558 99393412 266412129 573866536 434541322 485299058 335765416 342372421 811611736 998809847 374100528 187919666 292231297 159057611 90040113 830982663 644834616 769362542 670473798 615473514 524472143 502390388 683808598 229709563 113575826 20313379 890990950 853007763 98273026 861035882 721174422 934102935 748383640 852754655 896561688 246318062 321862913 383067201 112516017 357797840 140519195 313143040 894980560 431336189 124550191 932965735 45647579 827930091 936611143 932441891 785690191 731283410 141807532 797803331 613852837 883934574 957721603 28799498 446125047 512115462 371645307 207629068 79114912 65121632 635578596 193242648 407243965 113790452 788304517 135493792 898577548 585643667 996906169 572556154 683596468 10578467 223822317 235572483 612433468 790324330 334118562 718727116 845966969 108015875 715580011 820344799 772904810 73378887 650623482 655858114 165331840 636271377 699209711 740215905 812825006 420617278 529047541 798630867 947181470 806635541 675200553 831267897 473890352 665429879 265269712 786180080 876664512 714344101 995872704 380783776 668602525 78925777 375575036 403311514 848584211 120197457 121041660 118605964 713251140 230445777 720774196 650427366 479781102 235951649 466645908 447487736 30564346 195290572 979930109 711757877 141924655 596103173 826683717 189739783 676170248 465267606 289687065 588711498 37732950 97703431 691287986 514483486 184575359 936683722 675352949 735992935 333434406 398900115 648837676 519932145 668029834 74002908 939417970 150486676 271778531 733657956 627495038 198108948 916482527 366646190 868680583 766192942 977291469 386165777 35062699 226379803 475261927 330921717 941367887 150479379 223714050 790873713 939402318 912085940 280333045 831724791 348047173 404019776 696313364 351730428 800608884 980160968 172315988 302656357 449601213 87019165 34995514 913392977 85653974 533654629 51616287 495973893 656237568 111565982 949147244 183882871 334257596 826707997 15286856 442739398 41312489 91328445 616921938 42389024 439629339 542976795 847282509 284191017 156982326 424870704 347197443 706348008 722579334 399672587 471604369 724430418 884948678 29718569 826232797 177826074 769834465 411568785 148562090 43089079 938714925 817326386 453133247 557308489 296807059 714846386 466184811 927177087 976785966 571629603 952660539 71388862 296308809 971621583 437813751 118201423 977548369 542495034 192723965 67486816 402421120 84952145 630745175 693207506 157107919 382224576 945514744 113086251 781803535 888179656 345164232 188045322 126814596 670172243 267160985 289688628 929522428 2274845 184233591 604385288 543650732 531370836 930466499 627753619 97518481 479143860 838172708 602399413 972641907 972891829 964637170 286377593 502563515 186926544 778979567 659843969 222166185 884168630 45815286 715685756 352229476 287349970 903707952 876239964 467404926 462126130 961518902 980770532 958390271 845708012 411347265 649568965 224243986 202938777 924537409 442679288 224144022 786096307 994053321 275181714 503021097 383268668 287032594 114913690 340713900 795770458 434797788 781846484 75044238 46507256 462199844 450792583 739326837 993870040 587428021 105837932 28693102 729684676 263757683 904724108 269212849 544666958 137794928 384385502 235877145 415466355 496068737 239092614 634545600 875207913 431368030 103994864 627725257 590815967 805027116 845354268 425056032 630354888 35763274 695091018 17146039 216441469 964287189 791940553 507975928 700604541 969909424 162210712 546330924 15229313 668915073 326607100 445726656 411986873 55725137 289311017 248083703 648050546 146311619 418408569 428722896 16724731 832764248 776900645 303739520 381083410 862549269 705416394 741383893 858859009 911060297 543956487 936764414 927726939 678673725 286422476 648304989 261121670 147173971 996893787 826852138 901112816 737760203 108189817 494195087 705187962 916197559 230239687 932046074 605785343 338474354 777329073 639879295 221339306 862239749 563135602 791365724 597224340 550408884 302600944 877888765 342761776 42668502 389815455 992054757 994991041 13713387 833995406 924292778 315868494 345944748 612341750 479292890 677310675 311956805 428020743 339847571 979201947 151724222 431653129 873566042 538975353 4303210 259739536 576588300 120028722 907086498 313736299 14429327 602879977 489987296 212604827 791548566 740538900 190749575 567919905 861296087 348182776 991072828 3748211 949618686 111622564 965535939 319321021 872778852 899701089 875132459 302800448 218468382 317036909 377750943 478211177 481461239 109135827 723268093 606921540 843830635 351052480 575182044 453400784 762541417 17108522 356749444 524831929 905244560 141255604 828514457 849360883 263072011 610769686 495526480 671909581 574086959 369140637 372001398 804372308 986245414 329811553 90802078 244595307 795303912 277112059 803154263 901016636 64230582 196593948 97456791 524558272 407245989 747055811 480768025 732968159 979336296 18245024 933068916 645397505 612757477 243902014 305230650 451919355 451541878 747482849 14417631 3929772 620316939 326382754 754101346 834398206 101145406 923892581 699709032 925951183 476536923 406862706 629320273 805315379 978716607 383239074 616008721 834830627 818500449 539030973 5695266 594528269 16698655 730608604 579581606 543840794 323927560 469483930 14829707 761251686 766866777 163018024 463670607 451484667 970773647 393665751 565116245 169506592 550565658 214645586 949953601 584259326 578393452 706822240 274791304 882891086 94721786 793268546 818760075 799987097 951362725 881668692 451608388 371159393 544702673 167091647 281378599 146465979 743673050 45384832 370918507 698385654 649345296 301621351 909138510 447550290 930902854 68719154 44125720 522513821 961447000 791812904 26279448 34377372 540966743 524842630 517713828 392048069 362793087 603982159 179125683 565461167 987170528 510697787 361836496 499445276 631864217 341458051 726118424 576027104 592733717 334858774 956768237 349214836 176469070 49621661 961927392 789928130 876844060 629269737 289345144 887580981 736869411 637239596 352377523 931256620 649977232 437087418 503855986 153509968 318606707 64555350 9513719 64096175 786235096 500750076 104201187 897461671 237203854 735712690 642999333 66226306 689178916 807410166 827780359 332793355 748653181 691187941 428091296 337562055 802857465 937059019 339948641 893298144 54276275 950968500 96523833 839356345 557145907 416849307 362591037 61398453 71520820 564592839 492818106 66344284 281384951 209095543 464848058 476384514 323332848 946335907 821710370 906874231 171716843 451647400 750220721 800390147 883292297 108426809 300661969 687447035 128918530 502230113 72764748 741257581 622367531 252537180 793543967 96307184 821557337 648428505 153896358 489631997 198022839 614715543 195796776 208824206 297020598 924598324 616272757 951331201 737045477 608893732 260548136 681937227 953431846 497988216 856443435 535966814 491065008 523888595 767133803 111493902 214862307 145304292 881591753 753598419 148974461 889946375 467939587 389447095 432198185 633602487 148034267 469661371 132740923 838729125 608789977 575427238 798419247 492126377 19815514 443327010 720636064 841893586 839248970 751644638 978011880 168125722 427108083 807390040 110646314 125071348 213668111 905055563 662700026 519161260 277996540 971659439 492888230 997349864 293652000 534487102 671132777 525753033 797800808 483473325 409103239 375766500 401440065 373847012 614029955 765848324 59535217 691262091 798033801 42425890 620978991 671376297 640492448 91187044 370121009 741254135 357668335 401148459 21196829 607260942 265804548 43947856 773322376 702706213 794036416 435473577 302066077 635960683 964578472 887729117 371671583 254736410 535617680 845941622 37830675 43967297 515268688 70891877 234701220 467516245 860430511 853789258 265582289 616930310 795434276 281277773 235118884 711593587 808496567 12827117 399811792 755634581 126817924 99638253 347684707 719116194 939305233 910528790 207211983 889025624 411928907 603541975 211579116 651665175 706237958 960766787 523672764 416845226 372174541 374340759 230999060 997078088 395289823 948203496 570482592 225830855 466047060 45139392 342849092 347673704 669279067 905716112 950911960 539858181 580232250 725116034 191615671 929816719 328323777 621127203 890917634 312839100 718274448 789849646 29356991 13936002 525385707 582465810 103982152 983006645 656564866 29286956 445712643 788465814 307541707 795064991 815305901 880415816 694002163 631993997 762680198 418885744 272465556 192767193 812756693 836974980 208338572 541822756 208169020 942280134 978601746 616304879 727371802 144228276 741433528 742899918 143605668 861678296 251758273 997008199 525121210 646780764 41172438 290029604 695027205 842813643 176555326 105440705 161344584 830175108 131096239 774350007 950601505 292913329 556406736 419163730 55222295 36027497 706034301 377928824 408149891 579180006 444236410 216078657 109364992 160419163 276400477 913053669 971991495 667380219 351317654 274883028 231783338 854889218 661095535 199960915 306806897 416153811 233752177 486137072 121009103 971311166 671949650 404224854 126407801 939071535 95088261 527839850 436617287 257796276 307707221 673373711 232819357 110328808 934050701 952664576 178363107 24641383 135395643 468734712 623032343 726043741 707799195 559671450 231887030 353577661 589006301 702223935 115970313 207674771 175242743 182575876 89074984 432471347 767042788 129761606 808433811 936316129 336349362 657329830 992034516 433341343 492909975 699084432 36813887 208606579 377541947 78588657 73224100 435859705 819882423 838187273 678335297 919086025 630496640 904876565 692183467 816625644 48784083 443470398 581424601 918071562 597943009 313172254 403137165 464921407 137788477 407888652 739742837 766094906 480133237 607481070 219410373 195196380 833856566 610639269 314327771 206129021 637697037 716352779 837586722 904217993 701886085 493017686 651046504 386300712 878906181 898902285 909875372 405919910 400656705 359237678 376047604 17517514 562052388 270918867 842613031 952550504 869241699 161092444 900789777 218163917 52750354 789470101 536680797 23538174 64805251 523712550 769390905 812904990 195754073 747893065 790207415 377025524 418943688 740026523 321152456 725818392 575554945 358467714 479105931 498228524 23543342 263058222 994140426 6985343 450078226 205842532 128221387 970915739 853292220 160722364 984231070 506705696 344222685 442133301 565777787 645732092 383266055 913299913 272634246 645318368 91152497 212009198 188554103 236825753 84773772 183908711 359846449 539069515 7953525 890475120 36831214 547402726 544387896 168835262 649209481 608878925 977330920 700973690 687716085 950685818 942911557 545336273 232401874 455103671 8903728 841295956 208039434 943943742 249443909 789145103 152840102 408344872 546197333 530830947 923016686 801498922 167931944 714892631 815872883 324108346 913085801 208145462 959609975 957362459 194719227 672211564 322679216 546925328 82767955 590556868 317781662 343915167 64305860 511478300 196732398 435651666 877500778 566481744 317071370 538926632 531352378 283753784 256471472 175209330 18356215 839407523 358268863 191068914 78682476 263134061 16435209 838956558 810081547 887748773 459065302 294731294 745665975 898732329 515662750 398528964 410479412 924509560 213390837 989723056 158446999 527632720 220868878 506125146 565140809 306952072 683228762 852189524 751111935 185431060 185650431 807452583 691113330 699807763 645647328 144075671 398944401 882695559 906865036 899028330 63891961 886870451 704368327 78991541 940639713 629678008 64785754 797245703 535555756 537884609 479468119 891314070 225225883 455899201 676238603 361252539 868295480 458535262 148415800 749527005 920626716 622080884 848855703 26367499 440200473 530678102 181902773 762733736 498778477 367033299 985605895 800352440 868236303 165927674 837420302 745355632 848212396 78300488 169691386 257950232 448570622 322217156 129185514 576837197 330457285 68603546 847129964 895298893 764196600 892853559 858144746 935017970 650023001 590493771 802825924 377453466 403582513 137329838 94992742 784420573 329736448 509859460 272626717 937258418 489371045 540140484 21493641 861557333 842207755 771292757 556415684 389114260 424479900 149586681 159676717 796304523 641026370 702898316 713200075 671059264 627526739 203209856 225698488 995860111 740327205 410734492 954283747 810649718 705921137 204775792 416396723 248106810 419124515 995263855 377877408 617969926 451514677 847143157 335233739 308518009 646638894 940421209 47703995 266295034 666118185 848557260 364372253 284213718 869067349 586960891 107183000 730601748 90766502 777877405 273749361 561196279 322056904 216323609 628447003 952773345 842386315 321088499 253712298 356305481 731685970 835917019 671478858 762440564 453094621 403244205 560336459 887574551 495281637 53310206 756484462 285425084 648455420 631371678 510242593 512254480 447152808 123854908 48887165 320163680 413264032 517261377 104543684 956174752 266194867 286836643 506507858 492706878 134919890 811895051 472642144 948358824 279308300 926021763 456696694 85201842 717199469 118392085 468019153 863483831 185924680 204192094 768825122 192433600 5960691 605020384 786149359 252223168 949703253 700326915 606852382 343928004 705511784 805392940 466279482 572926812 612129721 446234226 493504987 207097557 349184558 288663315 567792203 276791128 149875348 312082853 837263069 938534710 386902996 443651899 848696900 139485530 135604130 752795247 975675699 563970841 990033819 666677962 739617384 987009178 822816346 427668276 994814046 226528637 54184416 637009613 135395488 124793906 430623989 235523299 453510162 644754767 736265182 733573924 345269459 39774951 931053401 297741353 87091837 334245944 1506606 144221191 262333245 436409546 333646932 145749252 55146074 400566975 783495807 125915515 795990449 413160602 639761178 890873775 728996142 165626726 718949302 103161206 931045762 15346113 500985462 752760678 793796243 625990011 761628506 909814180 390318074 15154105 401089959 571868828 985027229 481317459 986763405 9409950 509994414 659822048 161968291 318108505 326742528 625039746 937785067 19082793 967456919 237659323 529941583 878111140 231815976 187791364 25401095 839823134 791306681 705813754 124971658 551193159 982336448 950763393 54798260 845070791 71389291 592702371 131715850 388168423 936744591 405394515 597290199 830669390 386008180 48155747 98578391 798467000 939345692 504116357 254498750 658420260 614368231 685610595 564065916 836514927 289233565 926940847 598031720 747437163 303967634 121492599 721885262 298923225 34463685 232139004 698017806 690063969 609081369 981470197 724516568 396306920 699665204 512146642 837823557 336653974 685447430 296496764 5751847 427447316 272632318 598609969 836271776 543814079 947716668 509072746 29841961 374617109 909840557 244724110 397555646 142335217 942037154 34601314 762398363 892666379 312811831 521687876 309175798 720777318 841251560 485164455 791517511 202512935 593807681 952258547 660750852 63538488 213473921 91823842 532974673 233324524 236031604 547722277 950930378 770301767 769026728 325026597 117503809 93889303 82543611 422274979 858232864 822942498 161527718 793516781 385035620 664843633 870701926 387866103 336251408 42438011 661672819 201511639 565622166 302719946 621354651 509595714 542150966 687199135 781972580 464665410 75646873 755682623 704801482 155070633 958682853 713556135 342114360 45587217 48056442 123162316 898348345 932599161 755694621 651165798 459307976 802113673 456927229 696208750 709519891 723753452 868744763 170605312 682025939 77182418 765488408 696412089 428861473 899752933 929237383 220828984 735358508 138437848 554976108 50925497 268678099 892280622 427758913 980399115 838809462 732857806 184645284 247343598 92206627 26283849 763861626 285604801 109189715 380057254 948909244 112179789 227128509 494414978 164975578 199369209 973895952 30184181 664439647 868312019 180569403 505168087 922693406 547445758 478439644 705046965 290339013 516366617 600836699 739477910 355118375 998127891 253558187 774815227 190156845 37172444 355291437 790888741 183792070 744250849 110630232 336098412 565797409 503402347 901359028 793335033 789856170 433992455 713345453 736592619 830696408 426919984 590255811 354588002 405701184 960424673 328052970 596994085 191216267 642768790 33141520 102380705 952626852 11932671 427316784 437912302 349075805 323744051 69831750 634987513 431288989 956930701 487714577 936968616 884977499 249006510 390461244 880512208 872796950 708837327 248840717 410703935 847258073 286756098 465369209 15784657 230774955 842515240 422097713 435489768 362615595 960114919 497413391 146744937 335728244 313323257 4704096 494919719 840389060 98590386 350612898 999360750 845324905 650872395 728131120 355497236 689723575 13241474 170053074 660397803 24377231 983294864 810081747 486916104 262760268 197864725 260750832 804240260 314820054 579609559 785933343 590698357 319023145 619695224 64018764 630033745 221595775 601072031 604388797 325717970 215143615 329623646 342676049 474512189 585855329 344362450 19981735 499702807 906929820 607109508 147129266 207664327 292319928 128061649 152562753 468943247 304066450 470734588 244039102 214455046 773484193 694898884 270786409 311178422 184415553 948242127 484207500 465557062 724605307 48510437 93741283 962285319 69351807 741433551 537551519 115817665 102140692 677367558 291078272 259483372 942694745 534792733 21121469 981355604 450225921 405703473 624615987 418195642 995173721 780971830 991105229 4773672 249749550 96290491 806286479 205353457 31777488 295695905 587911120 143957578 297818780 890495110 364974178 745513313 3985490 997797841 726693888 605407347 836682014 412153881 452128580 155808105 562402737 589935299 935083191 338145471 849292463 771118340 218219845 258881739 588686435 919781882 72400998 695353037 754455242 218923498 745831373 269085771 373032457 96108225 555787986 613485700 715564508 885312950 333804865 6102945 545901701 462599995 111694535 242139952 311949908 906986640 832730860 929104425 839525628 597184552 968407942 246743183 274891223 107009196 683246938 782141871 494552072 994721160 50616903 192892389 29627901 935002719 936626922 412857507 111927962 724170297 849156560 855884542 342890331 991160310 146337797 473537380 240949312 948893681 716792033 143063203 577355527 413497554 6807065 143870164 498717647 46526039 600495941 916852714 459285021 873580547 657937490 42387901 439426121 53099628 881224798 326786231 723921036 48639103 395618008 458241755 560141198 673623561 460631152 518228709 236254089 206030038 924546223 863433676 64172919 806633411 769482302 770788162 865995831 801433299 424272452 913775984 470785367 882437470 776629370 479637666 457520184 401281031 356132933 691334208 974325949 122579307 446489748 344435211 887705857 451251399 509211381 907237632 679532369 435680939 879851041 976207310 25423149 700752897 609499756 646971261 603845374 668719025 718979606 103704362 619372440 977620358 241483226 213333417 802605123 176518022 353856387 592729637 348322169 681320406 336583197 116005270 829821018 803403743 654299215 739650298 615294151 245082110 891995154 208580574 402632445 13129325 945950159 205122678 873518707 320735484 243568690 289719331 92788639 918447304 872252982 366145422 213344417 447266676 843213448 737306721 49715228 630038628 330301705 445717691 47313173 120057346 800246590 106346644 510847135 847152439 927300428 836973241 471015210 93269388 476157221 131147386 138025058 522297041 467213053 637951111 384514243 6384823 388858133 674223173 74502408 61448863 264067447 779166138 442721580 195921618 879203467 512459886 186842908 884610378 256171416 267154655 182442476 418267138 489092516 419456376 277517369 22227894 267980730 602966516 668437532 875943504 15270013 760522843 811594979 315376610 743962277 360859352 265185142 854792040 383442836 304804975 472209114 224924381 901982771 505160306 880354209 690095709 69489438 290087506 911395517 951900415 158380962 275427803 571089744 138271792 47376811 430409824 807298288 601590718 933029272 40885346 691616384 573005785 889989428 474233278 870990649 994493269 96987014 58662085 688226932 362958825 63950135 310176020 365739641 940276060 938139024 494083562 981999698 562242527 626737230 625664540 53830509 412727029 346261520 721370589 586124085 827300938 178859947 841134623 535421531 826470514 226425766 228726887 487107733 223943308 599454617 990264817 971852099 228122279 515669335 917444875 878806793 361144431 569981693 157534175 132460086 839957464 962828931 665426074 159507886 543673174 343938921 690321473 273437122 442434770 792734302 930043040 753924602 236880345 533533952 453064043 290068673 232154247 626688771 835842389 481414526 114137467 166020284 723098038 545872351 788109021 549860623 874417030 643702393 718691002 160389354 193854965 592500367 238673303 550655837 664388540 52019452 460867367 305507412 833565850 146750547 553452841 113489983 138506238 867182149 584985469 69616163 817029015 647792456 167198774 528214049 228613800 863583728 736048519 129696900 27072230 878561197 422438986 747613640 50011382 96850867 92938704 761926695 980840150 554709189 154937637 169566429 471820233 884525166 628162924 401004654 589447981 810363283 354972520 398557337 471401730 369177773 406852621 630119089 223931040 403778057 930940591 269959709 195073141 358775439 281014442 835616022 667037834 295532607 601324020 711505382 654114545 480884806 805900209 178266303 446663761 594939327 132945421 178851363 177199352 219268193 34941799 688518342 404304702 516355041 681994977 474456711 614702753 981152693 285680658 25522318 892658129 690730140 414718611 14023164 997227200 509848266 80493144 900733542 418982874 143702544 206579379 512485329 620827664 349266199 438089989 307323720 792075508 548334748 758321667 570516442 723577447 184518355 75320750 879923067 989977911 666220620 40888468 676168859 656435984 167576507 432995967 683881321 714075725 94676720 218462513 886434989 406517954 904996027 677833914 567186778 253345328 48692587 278398515 184884136 856370142 137362266 104412717 242403039 688435861 732390049 772647253 56458177 650481702 639109612 954164858 463966052 515244078 152759057 858059458 327926599 520156749 152349846 404160634 737578548 274817282 427436444 31476309 713222038 19835535 896185686 574311435 61360185 94212912 124815916 75188903 735941374 630903615 971053012 793366508 599344955 116565984 46606105 923522391 239502087 104546698 674838957 594102825 54100751 651817643 715852046 377129427 718987973 672440913 516032515 767699343 207503096 753024272 660320877 2130998 899262862 499078471 887334873 319653148 821520179 978889443 722431180 328532458 587100741 656441346 914166636 195109396 363239056 664982995 375893440 757503419 64082941 337019844 535113654 622315044 817752040 205915606 624773708 540905036 457524845 658095736 991514727 448621128 903955695 945446121 645638441 45364137 180932084 202202465 660652243 707141365 609688846 816170243 237262963 617960786 872191708 720088449 642774529 737595469 544038489 931924120 618409478 355034509 560125905 481054061 596095512 836679808 346152117 459799461 128995925 735138208 411564229 97399172 774585826 133477545 466130653 489853086 189996407 981935283 668354431 360238894 611827363 397126628 456762851 414982648 881312746 693870630 726152074 51882279 265279889 324019078 201490255 950457256 653989526 767936861 847972325 917634151 468951400 28577450 938927584 22025913 205974363 111849498 180150026 672141093 811769704 926109155 541849080 913649040 910308758 132908748 721624572 62255248 313306040 75629101 602314929 904623830 332947939 828974902 998615768 844162936 105072552 786794055 35602651 499863910 974907722 586270307 987622419 617633563 515868560 18868775 932060295 52023378 950531460 247873098 719098691 50411253 811190404 851809931 757109247 751756690 239882611 203491254 245032487 823789939 783780388 651951791 987227986 734859596 300874617 759764336 714883103 172137335 899894718 109723294 728267620 229396916 543240933 717439311 863793640 489078966 937408398 767048687 929296186 709620016 10272265 589631388 420928117 749367223 703107427 60393872 479001557 691973045 357939001 359262366 867173206 845489141 576541877 39261187 723209801 822992481 613097225 931148409 433452139 959483777 545838907 919891814 669958814 46378754 834603925 775227879 952501647 197882239 314837792 119135598 686190271 874885405 483616119 343492567 955985528 623005439 721679005 802215335 559275067 494458078 85932389 195024704 198046243 95921116 320421596 808896822 581575981 330776770 151274669 976250737 82116281 676805403 713482230 131625032 441518172 620524269 542073681 436113760 954879256 68059996 535493369 153807298 280217808 785423817 209818408 815496440 307420166 217566180 313095956 594241838 731211749 127492253 368452004 516008847 720670300 969461720 48250134 877759248 674922592 590884840 596292462 500267369 17777664 841909534 86996746 929076438 395655012 372457117 681595515 863285107 813992299 862682027 257743836 862696490 443401631 146163497 213420006 220867435 552047746 697588574 449331436 166565580 655596420 764799937 494458202 194462096 62879580 285886338 79030636 501429353 468724396 550462582 332106366 163870593 124495458 395821907 504796668 156228300 195919362 677599072 845147553 288352733 27482688 599201686 502465130 748517189 815437159 293510016 966768302 997448284 835715686 296500613 499069802 218081494 627801613 618908858 389415134 399321462 651471917 377051380 566196998 552969654 651666410 626214696 700063598 63643600 839310135 930883697 95666922 646308768 934181936 200179760 155499418 765619383 898516701 527026658 304884547 303878544 744485488 802207958 722207185 652130894 858435791 427659689 255971326 917723981 315310334 832581252 366828014 988519356 863671013 794091251 877699951 415708583 55657617 293215634 127022815 855494157 933216449 525318431 248990108 567696482 315306008 430682825 857979465 251199772 860444269 986570762 189523292 501467389 445577693 419435724 376318914 658607945 303092828 657954231 108415038 717124442 595589884 648701511 747423485 821904359 783876498 861873627 434833728 463430598 512135731 57086718 203805872 795193548 905643188 613871395 804013117 629496812 470038772 460755958 888136841 239053802 735549354 626098202 862075202 222855396 723969552 857948393 710783173 536477427 826621002 681660005 795746152 197144254 998575062 981112250 821427822 432837140 344391440 778572368 489660085 319897087 321436271 432911924 432159545 900435837 65255998 240839757 157260425 741672379 457084609 43975159 642466703 473697586 823727878 824872438 480181403 731673184 234744200 415304373 994699600 402272445 967695620 450002591 758090083 871618944 12452389 66668552 973875671 582272469 629032617 373646483 480819180 534423172 216811222 435253157 458457158 893210471 212885369 376464265 526772151 57143933 526900088 480752470 379567648 933656254 3365800 919855122 794933548 532474466 212445231 43856213 466163386 357782002 318230192 409975445 703150060 772226375 671966988 391834677 942200003 435812896 9777405 520907517 211695904 827631445 868648670 901922710 207382906 531394133 827312446 29125518 469976819 585138571 357977133 79793572 265483616 34984040 788077387 282336011 387424165 427580954 413650819 158889768 655513584 827810271 643792536 829008066 44208234 616762498 773979246 267526154 424450263 238732834 919838389 589051785 985993227 832253580 357277110 733032128 426471133 287247723 70247088 47801791 702587331 601405300 762499473 803566630 56912255 880390707 524732111 771037176 595273144 166944396 361146921 443287389 522071016 263287345 374388159 836217662 256681364 8637586 696330780 993612790 235439915 167765580 666140618 707315155 484190661 203503380 844393818 110560960 406237665 545320995 763583043 621340317 866512756 130431527 555144922 30943808 367764164 44579887 843618787 794507460 25702736 280434672 780578000 959982063 288429558 357279193 132204016 954007039 255600517 398582379 722225508 765407297 212269896 198665477 937981905 953758853 535738047 439594844 466447365 304050786 797985324 407086174 682350266 820848104 348637237 324764673 333309904 922301834 195656097 110270032 569955679 227481646 603480634 860962685 384279348 827384521 749150046 354751218 119616779 752215049 741315615 444457148 399612227 311432860 170933233 234086314 643243391 212848111 217518723 667628825 137303875 19078916 134514571 815768601 62519175 848056862 908753087 641874550 42078850 140846214 287549197 194850101 378209407 682125108 970571057 33397877 680719841 590225543 878866058 358607404 173449514 845250047 446064066 466903958 66214085 478683175 635632897 166221906 737883943 301256117 166154312 925877962 597152976 114201422 756892620 409016350 484766200 215785008 92007698 976475705 867671884 949508390 616766769 74087945 648812258 400743694 885080515 215993614 253076760 302373842 309417132 335297341 416729694 310244946 817086554 204383591 96334999 739296104 485998858 560328974 459451271 951396717 672469203 518831642 947359854 676995523 612023656 976956580 720980307 893866398 410934836 174148011 814977588 929981727 705027635 515427542 285733412 314881426 340341654 716287928 798742703 544538579 870292850 444958464 539874275 755482616 970428885 637030588 72554316 761792450 739698735 8903523 263811624 566381498 167437649 712485444 125207520 601850939 55164878 37557591 830925977 89991374 527587162 898947545 572621350 511378986 3892846 580560769 990659406 569520814 804650663 57155347 166695374 586671889 566115504 195236842 324421908 477538961 681816534 38399758 654682776 780772027 195301801 231620271 789753585 236793380 736911362 752978190 521615788 60419421 998254824 798403351 679657489 101605584 852893099 677056579 897299825 248484578 671342450 409832416 932776577 812395168 262193841 572114337 717349855 831457477 866816473 270420017 272719600 136588890 541754980 141928731 49378054 641730770 923040481 579470876 800189327 626606250 600474721 317901768 315045443 678954470 681347775 161483418 591404852 297793333 662610378 164573884 936684619 667427196 122408053 260275294 855050908 254600452 274187170 911217409 700594221 931781072 287700037 825324222 981325534 259771677 939980455 837670655 99900891 642978605 100009485 150393171 951438644 642790625 875615955 257980282 964870528 231185771 417044919 123728663 661667917 655388973 128516530 975955172 455969166 614720420 266818126 964060105 785270392 297497055 778635155 766276178 606866543 183370897 263905305 565470118 664447289 980628775 112822526 267354291 520508438 168586958 23785190 139258734 866344393 556184517 680123138 561142368 599627212 882883938 439639897 79885758 674679129 151382097 599763022 593035368 454207209 189368663 726634879 724426147 879581399 287119728 720624439 214152677 255455462 168709167 402425797 245918879 55411843 844533553 536629080 901090001 270124200 487816577 111436709 137416179 753497111 817290544 202294166 338132522 720403861 1969847 435298425 341697678 57846107 504092019 297655744 47757604 887921424 136271136 937436485 443816929 12658508 481260575 631375988 497164937 766267654 935462906 619046707 622672672 492076247 474234416 419696958 69693224 557345622 669085583 392818140 34250944 978113684 219574970 47852846 971597600 120498761 969389849 622912060 144284469 700275927 610693063 273571991 960967885 586885293 984083153 21646837 907106441 988728595 372771035 123597687 798645048 987628475 69618393 70077291 497855541 506903447 618015709 650183608 840594848 13492305 210264361 448695601 14849055 830559732 913068185 999742711 729158483 919076777 481180936 288702217 36772239 486486858 115586986 83896773 546025529 188765952 817182758 661779132 733345266 674215361 156776109 19655149 502368607 302304451 798757178 697310817 313185073 448617384 967095353 404827973 803638637 787909990 674600106 345553770 820702633 735486437 220143853 325269784 747596865 64382019 368447856 889418984 679037720 760512766 415801244 359241359 162114776 683147297 570463617 701815284 689556247 188197404 636705169 947935212 277278970 69907014 828660915 918713407 552839283 774855463 858620456 230572391 55938218 400876036 701127138 295823265 742002660 112446197 878611706 232608485 950100936 846445523 170003605 521179561 191282738 907460965 810113156 892384927 300841407 880105693 89582710 558810557 98175000 677354634 338330229 527678103 727679825 582307320 327997660 356176289 974645126 944222571 921340838 531466664 495685554 26103900 949462010 917528932 155438243 649638043 985657608 466348179 782445207 429163128 742807060 121434859 103714224 266823955 692145273 907884916 154891422 280431852 121107077 443738257 363504136 420344100 553137293 565491743 325443880 658389925 301652692 442761156 932680172 570168669 143049446 343988981 830537331 481217211 785321717 983449268 402121104 930415871 522212406 967128013 56873698 835382862 312919788 95750996 417015340 970064012 446684596 817278057 275502209 569994902 83919356 741621629 953874921 158043451 981540524 87831068 196116391 554169628 896855418 998209573 31166220 916632723 820577380 782471339 618028132 55329324 267121224 870753417 43586741 897629696 30888170 161319600 107175524 328619818 330681702 705586297 940395668 696928869 576557620 53950976 82355985 33292468 618133255 651654526 943899282 956761008 800708970 465411840 767998456 667055186 757966057 147462421 535276713 640720995 436746737 255354067 100870136 42145033 968620846 337132491 952432640 448585453 951976673 695301381 837234286 416197481 86971428 771110863 817216348 631045913 114781968 879960383 513972942 39968260 404276765 596214443 684493465 127036737 88236941 956600456 451391744 532514534 76332255 501205511 604763583 627025351 917476880 525703701 756020963 427579319 36078446 384648094 276465627 568299070 249900473 603019328 103899621 251677672 307123771 693721856 999547370 100393467 596399843 445526961 745446186 488483039 348746900 825548287 111796643 582741090 700566492 759235811 652013200 231407863 612502280 485623194 349660660 736406871 936107792 899376290 753114385 689230812 794898745 562576461 616637743 780563142 601831499 150859875 842966984 625612743 346291617 278322603 124481990 293901110 245495364 109151305 249428910 106926047 199698126 784330328 294305414 448865739 319831100 801055116 172045967 175828455 958919753 681324744 751573259 616717115 598441520 465387788 869611755 602564039 811325553 248384435 363719353 879911854 823850709 54803816 738442292 77423171 201306967 323695626 583612398 104852673 845820342 869769101 986171135 599591139 32853212 437527210 439017212 774817246 857849276 379420275 853338594 986788508 244602563 635891049 629177740 835208339 399238149 531646771 870615685 131877736 913140678 81629278 303443200 455472659 449776174 202791002 893426291 323714045 711370955 809561495 742184371 350484283 361049352 822271485 321011384 166362729 258627987 432465474 408180898 362050239 514176902 12738192 727481166 810452138 800930178 502139745 307090707 718663068 366984408 544504389 740375732 736862087 523022361 330208133 194839619 632592052 924055113 279450762 15448511 425833831 646566125 79042956 905921218 175924873 759511481 55959166 865785958 461004284 246143524 484431050 948251423 39799349 712201432 958690422 265113162 891416747 141505920 944251925 236324697 554149476 726807212 478219153 472212371 106684847 690353861 386810293 530479808 538454535 121176730 536095490 105451981 59368082 396816376 546984499 679061104 989267824 724312198 322893920 220962990 270918658 699411595 118660546 127189389 346218225 296789918 809201041 540577782 688648396 898476931 578171942 934089768 305623251 109974497 431631553 946219695 213603049 345032503 274983019 186619568 545004312 259011009 233280302 836603472 804298662 179673736 732432413 218922976 675871453 922543128 713769100 633709785 272926314 792091271 557651827 683869105 400777552 529104872 921680540 134494389 112213244 969508719 75509710 899259212 399846401 326171956 416263995 553092018 723606939 485537805 213472126 233534900 894871107 882359206 26012456 454702530 263620068 383886701 970693130 659820566 558173273 738692677 17082908 158703237 363851013 57214534 321340887 559198086 184991719 506269168 334621739 415928782 978313467 344534255 656758088 778731296 24732087 73815096 796166676 942084170 157557125 786344181 234811198 909169347 759972181 25258151 707676965 560920152 250343654 512184000 551710272 636792688 664832781 310926153 564376244 152703239 255458973 601675 267967757 83316447 259263922 433780340 743343333 261354162 26164537 330655018 41838777 481741932 722890283 425218993 602198149 696745998 822333582 446676662 87840443 379409283 176492923 688263481 640946298 824441189 932500097 848245307 157776607 380274072 385681013 988646161 235631847 404175875 382198336 962097186 291814498 952042274 689733602 735992933 741387559 640516602 360629740 42178630 416448376 996033669 812951748 641652185 452900582 192585177 693298399 259267170 582643251 355621866 310500140 376710038 970877836 707255035 851350926 864054972 528301428 453974553 552192821 41550499 826921076 895484622 523134717 711014151 54924814 941890828 555968254 478655903 190245363 434793514 883261917 487930081 703324605 476688737 444460933 769773485 512245316 399061380 260954178 895094460 103049 171874929 349679196 894820370 847068608 945519363 69667902 389704922 94563683 215614063 120158362 696498720 219233819 505222681 182422523 562865210 629380581 248231593 495936152 745213761 592688573 931887164 45717710 721076427 541048477 801150782 148971036 354097448 430590145 798174699 563207890 559051519 461139677 134964783 477006479 916773544 299797591 764911870 378446177 940157931 967807575 835740028 335201490 978822865 180988351 471447411 484808251 175139739 817861956 848969137 426987771 681106838 194581005 202941304 553473316 615188561 259195700 529328544 118072848 662618143 358969250 818044395 879822801 935890577 380784061 825812419 270929013 239365889 722557076 589138122 334193723 134742248 585189234 634907653 131908752 94704053 959826353 857699804 337498536 228553907 617219506 715206703 249399678 506955995 588672563 736589826 686758236 537385347 842949729 741797491 917797050 383066501 929249196 716093535 455793178 117205528 736637085 958006639 240008723 860722374 440059463 206794585 758705537 409788618 357976930 980127715 76086005 944079387 75073946 666636684 545415065 115070308 606958517 93417601 829885291 167384271 263027955 510840222 82382278 793267234 900600945 324056562 734762419 381417285 180619475 259919648 555484503 246146048 681014125 822485655 306587241 508465402 682091348 787791742 16437687 843499460 824829732 466231665 228374193 766909121 528367704 783137443 567466345 742293093 967062313 61857833 590894044 32920522 789618384 984789544 371087319 643583982 432544215 112279892 702313039 761703996 218856798 473988569 298620136 613754528 838108315 920377858 908279581 367122011 347179415 946055010 516451523 676601804 779917901 864794548 78247127 947596524 737700793 50904381 151729251 616234663 879302217 364334465 627268330 63735361 888990680 136327517 629817533 797676673 215474774 579631253 759594188 185565554 168852502 59962199 202231105 182869927 804240755 706989381 629049011 404272245 824147941 618843153 757806199 545168342 635514546 989191061 539100084 43359767 450502219 43165611 979269476 711456276 574038293 409942766 948912272 72345679 563925717 80159275 880624877 149162754 794297756 58676550 947952105 226179568 369506857 7333304 556151750 260135504 53608658 249314594 697348622 351375294 238191949 698293532 399643983 35311543 59189666 274288786 606118148 566235236 580982988 620338780 630469407 175145143 455980820 195400930 515759696 922646549 20299315 469858715 564309063 728213940 281176225 926640165 543735831 506859384 849672857 824489182 627246459 665781878 114322915 29261829 7577606 69696046 783682305 885666743 903649217 406332427 836353708 772877642 99091353 379502596 936312826 921168383 44275790 743395246 954363581 282494621 339477119 58250756 221190169 442413240 490443456 101528506 274962681 660709675 570459910 621338599 516610302 549285443 166424758 702710281 844373560 87032005 439563029 155959917 864997643 531061638 530839620 265035214 6515175 970228250 2757137 677415885 941485260 825284895 411786 326619501 17841050 10587453 9864389 394038046 460420195 381351070 791479862 445770533 477750984 978332671 120165592 698735316 820129709 570417411 232206754 842045455 852688664 499642059 783503299 543781822 128908010 611350975 673065133 487817533 925147640 363182562 899085300 192316252 153274683 423440874 788590506 451089804 533748645 288650864 942096355 345217722 447847947 279126807 656965449 868614545 113408112 601030495 208796388 394877208 978016488 986467607 560751837 8188972 399490599 597150271 825148550 913248404 747584099 777046918 310962858 512604939 704199960 332128637 893021738 724572665 424637800 242367851 945991767 499100944 753560976 336107680 119603042 552198182 365527554 961044974 584065467 855255045 974080985 684834254 816448747 723152720 634231595 348469459 111440612 410766871 158845298 245451080 117756750 92120053 512837881 458354775 79127485 262411749 341809270 492806232 106323861 657793870 180583545 798555788 2351550 126576639 383859581 281411273 644514701 755496290 81986779 837781339 492402338 794524200 220711513 237214114 929936845 948653159 895467528 574500721 470007510 741554295 679486817 904724824 401852235 874514801 528259620 113521996 76982283 558610232 256874511 302000191 315598511 495494587 555457473 236695032 603405137 119923944 238474790 750910899 252615903 126906718 19151528 746359402 167357516 550168744 531009681 177507494 931212750 255915207 398968326 556946136 607374360 336122321 887499992 331890407 817556725 915570357 77382283 683387322 944620188 138398181 117743520 22587004 458353016 274263727 524255256 764344099 604290222 279740223 785899633 152613561 624203522 774960351 832987101 709928234 14006812 975458803 168306613 35066693 641079842 327647693 961800131 333482422 714672903 716416871 683913941 481572687 98957241 991356880 313772084 631650392 872068602 776837001 166324217 662732119 698685175 395180931 414944756 212869763 480932441 215081525 522086095 33967363 987788342 40460838 187184025 43487452 239391290 997401030 73294194 243006387 612439383 539219611 783978654 674391853 872547796 137005940 778315925 58359653 491507037 213092680 743454300 932335418 687285066 839832418 291022591 325385457 863258558 580340245 337875979 224943539 839204628 956141864 71778464 616846461 568703313 260020884 417206684 73682472 657351060 711323684 964544290 45721828 740310320 902915469 130803110 766260858 630059668 658006472 256223360 838671550 823965536 792860660 240749670 865186928 870170257 992162048 715013888 853415333 306470543 203901978 504647731 927444255 309049050 84813197 879138023 711793053 136721059 761321918 634336266 496052927 342876097 263194300 513307612 118220269 510695174 318017792 405688181 751472963 3090262 147486401 132187819 370661189 560226707 743670378 23864834 329297154 80512334 93556337 960659063 689030646 227221868 578860382 380503018 626247841 305953249 264157778 590764826 352057312 549110080 795376354 93384075 766937001 441308090 392365248 433828484 986316644 983181022 531273036 4812252 793417764 887529780 916653655 826572224 842612704 618748498 23399805 835831441 490715079 173875595 366720213 465079704 806624492 701084301 478736710 334673593 81066528 235825174 12105625 354056424 41104412 71482151 704612608 149374504 867871621 604216227 282478464 249262657 732118717 229984571 694472401 952648825 862179580 217219185 471526025 923468907 254419725 310234716 808417614 550818727 740222656 496767774 988271464 914903313 638474552 179722859 429358379 299525752 993839833 742323976 164519478 89702454 670591595 974011721 635949845 319656515 399640183 51355389 673719101 233929389 992799844 128528179 611167355 697315162 494028865 763252444 582152416 607480063 325967815 687582755 447228029 220039062 879136793 63329382 405789284 332863034 42392748 293276053 71424633 617458562 747617025 613822145 297988931 470909075 868875244 492590724 775404355 509169676 114594781 112861636 367594668 212945911 858660049 433245955 34245004 901886061 235716624 200436861 159669747 332122597 299367834 716944269 776095477 187609330 73609593 778205430 256809076 78576177 338299348 225169266 562853410 655248830 232861746 663704475 937897977 793726359 622334113 351775539 446288712 308530308 488462589 747989635 678484690 982320088 587255004 516028451 927536102 109644357 791818907 392801248 196334389 989341096 337554500 500370354 386774080 258962369 689299586 585175018 948166827 857868654 111298537 157870263 580235558 58289392 326340542 144354076 1561017 960173520 733629549 38649672 990315595 731501146 804179790 297740165 29034899 857184176 442073951 134302974 758326744 570525105 357353650 186978618 144858665 303323029 287421727 86458431 156167878 433816496 297178065 305268713 779908010 441635711 565421504 878076468 215698361 710706659 534242161 757160387 851505470 238568480 352859372 840427219 976420510 809003993 813944448 115101404 940454793 668824124 112157696 829981450 879202644 595678468 155184133 849525149 645860425 926038875 754196746 808227700 409939744 3283758 806659913 257552516 827508714 386375837 404665175 590850239 399996054 246470528 858567867 572560110 820393640 370615609 160106659 981689960 908024272 500883433 170773661 860259873 593418255 274280126 961077349 244851302 909641741 530183091 479686343 368678086 16328448 854100516 519192376 303233013 636487303 548475696 483899597 837926339 964057148 196509184 741966673 877124135 720513445 889040905 823317757 698123822 29052794 255148390 374598151 293295202 177585561 754105539 181183532 873754526 248141374 463967593 253704816 114771097 811867469 439662285 601036378 794082541 917828721 7383748 253612120 192056788 745484601 875479986 56958959 845716329 403328346 638916263 651777834 426359556 387595738 55255717 464925608 543003841 172412071 180314043 89952050 100497164 585236383 96473869 614537601 905647701 614609362 816949971 861941822 987475957 433785571 339653854 510129651 913684217 855039452 88095273 824095729 462828865 537863231 947034232 525794643 540558183 728105788 40948949 811128866 959469358 172375953 915818776 233442762 263358560 398261559 468382004 5264621 51477312 317573608 640991235 712195202 573287194 305689979 652906881 476783283 258915793 288357791 767173070 634411614 553113157 207959929 907494688 667808288 456664319 80496449 397123690 610169934 166974490 932364625 72672496 394023163 60186173 717892156 176821280 982895007 840990655 353122328 418826545 323112738 749949757 781315142 499964431 694600100 660286521 232179305 481508540 316034524 46748181 575795680 120645353 852671494 156109375 584122564 732318679 341604018 124349349 236805720 459004616 184421759 68862547 790340431 624963641 626225791 991222054 380584135 162821511 710250220 934569539 466122914 24466824 935392745 122621000 505594570 500844134 873320643 693022501 24090907 35769833 799751098 534597911 434830895 554675756 692066210 984820014 345769347 980509779 940176222 189853847 407372202 518648676 316010716 111858193 140278701 158689799 772621933 988005587 506438442 477533600 346699425 939357064 175799394 908504027 479856274 588574223 481887111 755919253 296772895 61902381 369225511 471085567 846229979 481925479 770632323 145150663 522954734 796254758 959259920 760708432 398043189 942754860 678919807 8277252 618954768 509691772 701215719 551377834 499090475 873208843 567220292 854610651 91995545 772096101 497202801 910083657 765218970 488187613 498448619 827867990 385904063 311104924 583773063 221027839 545179377 798293400 288631285 655200093 390206288 466328852 931522101 703840819 451504335 149924864 662134373 954216759 557408804 347166613 846455841 173821797 979088618 337253463 812647111 11576735 567516821 454574879 827225029 670120207 553944527 559035401 477074372 400550976 698073391 928355669 529140692 305248706 219238739 378105797 791127153 903578511 281942123 773889292 263760785 275760918 940373231 586170489 19965796 127714135 9087336 654868894 412297657 165361120 922166630 893848407 64069409 359778676 75960293 256761269 991436872 492106063 521638270 314542966 344321677 569480542 332752202 575965586 174883599 718666895 216148229 828651398 414567882 26172399 698569609 612522918 487041698 56249992 686231579 669891284 156264527 539631226 905665093 898612460 488557605 448648148 194317874 792793609 600630882 863489466 710939970 10574684 175540021 826593875 27392639 907325428 959550940 666198586 591437381 815045681 797479097 974851973 347389369 922036577 968090512 8748838 20032854 27836666 284543125 668330130 174479090 296720442 888900699 481934544 601771569 824782593 788162255 562267504 424315455 609098596 794315493 345391481 706583004 990378861 745091059 912272866 33827704 683966146 513995618 512652976 473409839 701776046 945348572 206066842 649700407 974527011 230637306 74056821 40465140 136713377 418121701 535631999 978993102 802547060 639777648 854857407 974118807 556400254 286564300 14999740 893924638 588783240 326997179 506968112 360978305 542308149 612955304 598294958 438661125 115006807 703127283 842072686 555171999 631724041 650582927 335986826 219994298 912516493 33506624 714416943 167031004 503019172 821076038 777441330 519470477 235691002 972110550 724859432 408344934 875087836 335291319 28873269 36953865 379558352 942170070 328669866 257783407 984612389 259583494 39845668 730652401 66917227 947047661 379874279 292122636 894532136 776860891 982451797 557626770 135178813 299764340 192841645 988530197 614788360 847588710 572975538 368045617 272196487 194374012 170084494 562826024 537303003 294211368 722369536 734488641 959550524 991356039 780528810 264921818 830093189 275019662 751369405 807966184 294972235 118005446 484380132 135806001 502756518 277086885 927767111 23549495 553825686 177546223 760702516 178545566 144468485 71468707 934621049 313273171 241496262 174333249 268283101 378282990 930465235 243564620 921659168 777334637 498268410 459657511 555378930 752315175 79068310 210830762 960443896 441448685 332234290 342503227 321471659 404734347 422801803 772195740 341828508 893950208 3390358 787199085 968226643 355192886 315016742 14312864 579025012 871173149 402701879 960377190 79377810 263302242 500000193 919999890 523969762 466186495 15231397 443647601 232119174 470578461 148480399 395395714 166704198 883483846 408923383 965862224 737992542 558804088 590387250 190107591 880991270 36624288 184129145 609679840 572161133 470962130 690363197 932222392 502256616 931578203 184398885 223955829 140362112 579533374 39375276 975702402 380641173 204798045 833596357 251010592 212592751 371337298 467773582 687022148 859860606 89272961 257442165 300895979 464166142 46847559 976494350 947182338 46141266 857321164 743325426 376627961 707617419 918618019 618007501 552423490 199192954 54372807 554285275 586323478 495115639 856027862 981150352 51884464 547874225 895852618 80173356 406957334 30738934 95507702 475544790 836791787 430595801 509377057 267800919 35071896 312055518 243200054 171160392 15957191 775491759 982022461 179861243 862950524 616830028 287284676 250740571 78740889 177927160 380585500 787373787 383575469 751438138 352556752 395621794 544491735 905751598 676303251 741172267 933832055 417294392 915721033 680168423 698723774 636411782 40520186 172021850 52885317 688272973 600678002 305934619 431777498 694029488 322226609 758004407 237095924 609751659 97634961 580886429 946721889 955198726 491567226 166584126 979192868 607771391 949911778 40242342 838554851 566430967 61259143 672139759 787864538 103374335 734765102 417275351 724512198 352355179 83690370 204563875 564273102 116008192 932554397 878398058 202338580 419437655 790207993 408740570 634247574 664623989 121108905 646963297 83132605 131754439 453187036 356386374 434955611 463560337 752938898 965575626 119225965 713996999 821014149 860044806 967684900 636647731 103637971 156088848 570198842 320294462 807214185 816662953 132613846 339390632 276362182 294875312 113986421 845376787 785990934 918132614 157856981 883713460 227438496 629238489 886733561 363265699 808034629 228188939 386109613 171462983 295824114 45962600 867220934 7669953 589773633 925564761 793990866 633812383 575232081 723981224 891479606 326153438 591386176 269630118 369089163 232954801 957875299 627694254 729463455 73927288 524088667 237203986 941148233 166738608 900084833 564658032 258563807 108607978 168327739 422740675 293766309 542105530 982643310 433315918 408972099 160627649 382120773 845181402 888083611 168626518 427470079 678189058 186659868 89375400 880690407 842856353 232221093 134808425 644506340 351542949 735898764 199217760 869717688 369626723 856279138 845717384 856806972 214971669 96624713 502043905 227470841 47728573 458834769 843224346 255493096 87158839 49007609 970249345 342919716 869543115 716192920 101791336 442101996 121330446 88545712 981883180 31504334 48548063 94412809 697133957 164999713 876809382 26089876 514444862 489924685 512562573 703922934 580817872 603153493 986223566 917926405 571220753 451432532 723199680 110410714 463837215 710482689 789139160 874391176 676288520 103794591 937483377 701142266 454112347 486748534 680693362 742700858 939474539 742424373 423300017 55489252 285769188 644948080 412722801 413811597 330495197 880828070 794340573 495745149 306598365 461190469 519393402 316268210 291098833 806671710 700883387 939385469 730246001 406844509 158993125 410325035 863150847 699051826 331572335 725826834 456387230 625792560 648482816 878867673 193693695 802457604 728946788 939799951 703275376 825000852 487991896 735658461 456029674 635424107 869223794 487871224 272072636 50186800 666487359 702947454 261219964 772495161 199352009 651780832 718479471 436602284 968143188 450258988 739770854 871897340 166682361 148619006 591943169 43656848 266323633 331827673 993447766 354668571 117272559 112472613 179883820 277711784 238281221 765106032 182471648 571476531 813512132 253335896 977374082 771485509 654229914 385638675 676910178 167262643 748266464 791201684 762219737 274860976 2437688 788133393 722736276 200177537 72981014 214186299 227821632 27579953 394233744 904841116 908111401 955817322 184330470 645057532 85383191 388480117 527935570 639519254 691061144 69591151 526205935 502585450 560601920 690305880 669710806 948549683 789497133 670474570 289693063 589360558 540007894 230014163 878878977 445359458 608080133 454428110 201581051 241813884 634142203 233943701 226444118 185348379 210178026 227138466 887447625 48753978 767599432 712968776 299200532 953464377 450063971 314726824 635825369 433532156 606836732 699944074 371586572 209995482 331767942 994622814 330373026 82812842 750167656 884189201 445161210 113202953 775707979 540989607 368863235 850725265 645262991 852834135 651730366 524050380 119400638 594260986 556475926 631652467 165379488 622259437 433296067 604860171 636636054 779489061 710980077 169890672 991106270 5666603 104844682 45953743 893534225 859425676 827790119 795824186 491457144 556932767 369065053 229344532 505479730 965326412 604365943 897716411 802161965 408491245 74157168 517533202 339102176 680242669 697940420 114757451 760243995 130837907 535735974 126203501 746496149 759325037 334981983 546181469 650824464 129537912 375874196 825185878 132131771 320145606 571416522 207610922 837274068 50549478 415347592 741514388 196957099 556370418 745981358 104402596 653922201 379267710 621976709 931279515 47037877 836075701 210774521 580588581 227967519 514512374 719940255 630513244 918833977 715649765 367915433 381215242 582932038 556395522 463370679 788231077 1566059 611814576 937846547 212249603 607844753 571950803 404148681 739753306 745055701 44698047 406614449 745525482 671411888 220287903 259140963 1493393 10222308 87728771 318160444 780340525 104760760 554625947 584462205 495589542 805219133 597236041 39240641 820085216 749219186 452385266 521853273 998627815 983748588 941477252 426653621 920823727 203211713 894667465 171900026 876448795 545705068 923015973 142343615 517282612 891973960 107328974 193027874 336693226 488455050 321827277 756737397 584016133 289877082 791046122 837495556 683577962 962309747 132975469 544897944 558656111 548649019 736925149 890616992 312481634 443722621 234554965 240500276 401651207 369952428 440436127 41699244 653792919 839305440 14874006 237498285 254582705 716398792 529143666 22333431 536538889 357521632 627161596 407681626 849641482 184766531 386084288 171424716 384648224 467846239 274703128 136338554 900387315 790038044 806013955 638902191 717049640 19248507 36693119 880655355 907678433 60289857 613235440 458695655 506337835 315621294 108571646 751442892 195461323 28784409 650059442 655850751 313362178 568364831 800731339 529722062 32553810 334542410 59341463 721771234 51369140 845447440 204648075 545271009 502277468 596631283 972631345 328575103 969296965 245867724 769788128 627886019 183025261 523159579 246570064 617386224 914427484 59276911 518189142 118794449 999516942 65734303 246250639 153493228 231115471 949609739 522311082 673729882 997938681 164813652 145606404 713532897 942896701 710963844 363274606 224640877 759322246 973740378 423257674 741783377 759668675 858366449 887237425 377722446 157895282 64934978 74146037 945202353 986659508 847634530 76146905 190469039 473653382 204398348 220549993 178292745 200399082 749325856 764143366 461820313 283968292 647472915 858651327 284781840 198911837 252004897 897008631 435795999 388590268 409890828 699577853 575964212 105365257 281830059 707805786 840419859 974570906 48271145 732128423 674648514 595391543 661146693 357578669 673881615 632765743 917423137 803200020 192354074 869647712 438127291 877484829 953223675 45731243 653823620 800459116 627775954 188051690 826108264 951312242 789188020 690072993 128182391 650550266 19663379 445353898 61410521 546563222 114588640 9305092 685557990 506475361 744815157 531364638 917552318 63001963 921959361 196218015 308333661 294228321 182226451 309644194 201874359 365563254 769716402 567973303 532597522 261159923 451275968 750943839 691688197 390940464 449021036 20657156 336047808 598890440 497793131 247250295 787617087 90012193 270194199 188863230 849539358 349566736 986903269 43481937 994852371 451661081 803123194 75564757 458681154 164308045 803377902 930238392 841911056 518808302 675951113 816744331 734181274 227698288 829132431 320297480 337959336 30268495 141486832 256882228 852513517 914354404 559624458 668828044 829329169 611525237 300000766 74939314 411993600 875018521 306515853 617040469 810436464 271422325 238277118 906272213 520602379 206708176 923660107 539105740 448361618 65831024 270909117 158814997 473476311 640423810 90113120 399617031 990889022 174993701 349250203 181201375 711497982 151144152 959232265 213957242 255334030 117082428 558127519 992354352 137826968 28176040 595717835 407542211 274051746 785336060 631430454 396267608 998551397 295099987 789358832 716666072 317343597 20121840 318224245 590448437 415090225 378245048 17399687 77764242 993341521 264849714 164855858 15858527 484247038 948801346 933303236 884804158 305190016 441500051 50668337 694296704 909152731 641571572 303760045 881840527 669725266 6854467 798644926 598056838 496363535 169563241 135210691 711526493 771755256 357451155 752117455 990073317 149600874 724475710 923927110 992398922 926187906 362528117 771430620 528636562 513982031 54522231 467188455 374580217 830039221 542973630 907911771 168123271 987646043 626040529 125087401 597249146 601485466 112521787 491511032 906547191 599483305 522908808 344867378 324376818 268304992 565668587 696266957 844833813 733975423 133071358 86847156 921440662 10972589 158451611 794415578 873686793 8421737 83661486 796509836 734363010 463255110 262690801 681216982 900046406 422432447 185410542 782640273 510740348 471352517 155324274 822099627 396082554 484280675 919590012 428052114 19491575 650796762 687393176 657031910 157558094 891376154 502959920 689112645 5687319 783159401 140066076 853442087 878250244 699506062 948591474 322899992 358227492 476824435 620865234 764521042 508209764 297376480 830844477 199997511 212155122 880428298 841078653 97982109 291280117 313593291 49564625 874476748 954382802 745590784 353999424 190047729 454526859 743161734 251903788 487626283 68296282 667684106 661657990 166651891 406727388 337453745 714041467 265749861 210146678 380357459 979811826 698239036 29731581 41288688 176477790 670477302 201636557 798240251 603602781 261429829 233452505 361434101 777138956 326272995 471575558 283654286 517412128 127538527 156624727 222695532 968589194 135646820 130890691 73286670 630772230 579503910 444523660 739703774 333160728 96188596 417483053 711136903 621309435 737647526 318798018 126946656 269176271 216461354 609133801 72579092 845808217 30409568 467688707 383787314 142028040 717277923 262059977 262504547 904634377 88307595 152195686 619249543 694092291 322111591 73677809 864779795 587608912 631232685 981200157 234454800 243238189 433979459 172482314 907143140 256697245 564007762 470400787 120280356 653603421 230066031 479679649 726157718 6323699 807318324 441672801 390542620 131093569 892224425 530382538 129457425 457157274 642888456 87650702 603830411 713792112 173964540 999624123 384646367 402282551 351973014 772960867 898181599 197601713 893835337 874563377 820239403 629520301 381487449 37003196 767392653 458673951 593545604 905880466 928748812 665443618 924046824 564828281 647401550 76433609 682289589 397207083 569310913 124749491 84295767 314859192 911133436 589478192 32334928 761766 368310072 347443950 831526727 597594181 115649917 390161555 695088436 770734712 688257753 541501588 903296224 901145052 152313798 985274715 742436576 650844560 606393653 946135246 748024889 779124527 146645164 447600583 820157010 416255741 847679405 50409382 879963853 975774988 479949509 791759634 295673597 276937547 990577413 571310097 271459230 608348569 961879929 653957129 583788014 512048925 564419211 86872635 575711829 587085361 8339147 488254321 992909133 156041221 948470395 163771127 542286465 58273185 723213204 974702195 422613952 235200425 723108521 581437598 54330976 983568183 861399359 752581901 756094212 903431744 640912415 514219376 27215121 748734831 154280108 962440714 319751897 868663283 900651443 551477036 284499965 69316637 679609806 15607749 388169351 684704916 83339829 437364110 287137386 865200989 564290788 384703578 466550050 580629714 600494189 111264768 31242913 338037889 739932985 300501440 833146543 581615603 434714745 876713192 970583450 734932903 715882180 258164139 677593055 60022790 577511766 803680706 19260937 671526971 986544534 204834827 449259481 444943039 89086243 552156968 266456446 966684569 510779514 709969324 233763704 691441693 391951610 292482738 933027573 40154886 184045062 336490396 580934977 628582365 955408063 68233325 557162758 764876423 883756642 408984569 663146945 13901894 74838026 681179056 971300192 977748171 765170343 465166644 161497327 644716837 817350166 442389453 924291475 723164269 400349535 853434825 923860373 458787701 76966007 23412323 912781847 568579140 122946763 251113589 287691886 79427907 485212464 655824714 733241614 996327211 300665077 901609871 622140381 116974852 828139931 226938011 153506052 293187821 647595868 40325559 773470545 394954859 441510215 377382491 894195808 646002330 899296236 139401063 574529546 487841789 35569251 965752350 357864039 670775679 874530335 422322296 3943190 535394232 760670476 463210912 406548105 842859965 718305200 736971414 448447196 111003330 995843037 736982786 235618340 952917054 307060410 792124582 191378488 697254091 206039205 982782289 961035854 515823280 852862009 337703876 212948265 250683763 847125962 315141335 597751186 224818200 906575819 725145391 535694507 341899371 138113991 796033754 615250808 395248493 44135172 567465123 608977945 453332716 506740769 632660287 218850040 586981194 93034745 600964213 38398550 591339355 248047638 681627309 997890157 27411993 521874228 215851091 641209742 226647384 701435488 279740414 417262452 544182041 943588656 675485239 748481213 304200099 692148995 622738339 131769132 746197131 452994668 236183662 253604099 753065411 281228626 870665327 746823828 576258431 228632413 843012697 950275327 645160860 999244811 926243116 139269971 737202784 963405100 706782411 617965076 739882369 41091836 891669300 289701440 293811870 883318660 33276298 919616419 46488829 318774022 237936472 227074315 452956055 621715229 530427501 885597643 63941951 836827622 946346483 49736436 995714054 897595211 387075183 33930180 775593956 362328008 549440694 44993891 476021548 801221931 464416225 402765860 22334136 101541200 638536858 815119538 566455419 391755531 403449752 786033183 399125243 213700423 187358743 718614612 797906376 899317258 385591087 285478930 158250928 876426361 245139000 913902667 852113964 99975542 240642728 741657780 750056467 706982326 987551115 171864929 880424188 29941650 588769991 782028266 348403714 416020634 166952459 689332788 676135654 746565744 854706872 108143042 438360365 935965619 725311651 289112333 778525476 166386771 537112162 401089895 839843542 961594321 398246634 983876758 29425490 231198668 767623980 489193058 72330944 478649090 669166592 372787965 512445035 527429591 114546564 318194944 942353798 161387033 419740058 782618294 265814096 989317110 448672820 753226699 397490718 605057807 332337363 970747230 835886220 96528949 596944491 759989326 974027529 865902128 546874905 309034614 86583124 124560125 379950916 877219800 723557654 43478400 519697575 569021502 712405106 373092953 451668906 282952518 542588310 319381537 553889504 582162063 934854902 176638200 686420260 471734554 385225505 116248885 540943281 767403143 522962554 63975158 30366482 553842729 279964874 932015425 12748949 618188085 416798124 196631522 638760155 297020162 98274559 436196178 850822586 417174684 320670189 482618927 877875287 338399059 898614575 345585283 210894267 23783148 551071671 555921248 648464067 29556090 453461801 875965293 126956377 495335995 542694457 287994013 767521892 426811414 335305369 533604520 373753628 858578810 903004476 608362821 540494682 681476984 483313528 363321589 803055714 568151094 52509141 593046161 358294766 395510575 465322804 615739820 627180501 614703421 437455743 651032189 687319670 748296803 471695982 128628320 95073457 722362146 384559294 220561859 123853900 556822019 485545929 772033810 538996463 662551756 526865081 65116861 230298870 165418000 719168080 183834860 782332789 924280711 783422207 164338930 536412582 64789716 895342605 123266020 162584277 310528925 694401582 262087988 654243700 569090252 726997055 893131009 769322239 306141397 477300891 513423178 843730594 726174011 273963832 942516602 911668481 806801099 138525252 765525097 718013602 818056698 371469927 361322279 259317623 368785344 398545272 111779744 574384068 297189900 159386886 373950523 65731961 380869806 460518078 992325428 770177142 519630280 407342052 482980655 458441712 328620008 102827739 547455496 75370564 776021712 957835335 988534723 347790344 650178638 872314933 524710095 492126689 70739803 647360169 486461187 112813142 232710603 875541365 731016407 983678764 603963743 769368230 18973838 592046449 356247946 895719676 786752471 902055089 61709093 35671560 916892542 616582468 292692210 975584888 163628415 639910691 498383577 882862445 702829395 465243623 303593565 21859001 763119483 382031032 862827883 254738328 449998264 89709022 420794890 269695855 169742894 859594083 419163084 571776904 726865282 399429022 979016787 165873424 837972986 401477216 350421696 34968812 391202786 405553808 736135138 173393849 980017546 521592583 668435172 21737794 55969233 350101212 948258024 252947579 167738845 161724167 203217149 302519860 936358078 40953422 724710153 646933366 704395987 494221686 458205059 94986155 369954889 514779305 941022703 747743727 153663686 120511063 693106852 165257016 152812100 107224835 375890248 552077235 288942877 571782037 193234346 631082917 432276870 995878955 140258447 517393267 26401887 54858638 873681317 329751111 395099954 612216935 903785357 57833334 899600909 311472243 118394276 845351233 490880334 626159538 325844445 263246485 336061757 819154480 324038512 67099714 238273960 680904719 389480130 148136090 810286138 661026044 810020699 544052212 656323585 192193895 77348349 749435809 550243549 453788185 134793424 631361813 952672041 433110718 895348924 114270932 465659548 180787189 702353588 269721554 718970450 362001652 505940901 552844743 889418907 507047075 779257563 260055126 66844960 852811295 17333579 104950955 735890517 99278647 987889 170580083 12697983 469200943 848864768 34195779 583142601 503534343 736630106 215412609 80799269 695921328 822798136 651979343 908618090 182554753 172472237 529829018 284237389 277794047 369537168 645434303 1715592 361924171 769255552 30767607 625202328 257989313 900955313 230609644 948615433 866411336 52509431 94721090 762177352 723878483 741731377 712255897 479783718 255692462 198556712 716998635 318454730 117817346 412445751 498734783 760446743 900872163 118994147 147966817 112802351 728188218 242590257 802081856 965817999 284933800 401056766 947572906 794298288 484341327 90777491 741702163 872386346 577031773 836855519 841681981 840106056 620382048 965402747 825797007 787757375 911470818 156520449 280702300 172089329 836965178 715169396 732530910 780711392 864978623 631503788 20704833 164042036 665273612 841531425 268044809 613661933 620136438 720100612 316669129 783657992 934784688 855630210 573143936 160782863 348955999 505936288 170290638 110018536 665359381 911247127 241567016 431076075 139083381 452328718 461593239 7224808 168008585 648853502 367463736 462386799 306032677 113010926 230329296 46815858 132729820 745776700 532268429 971539008 412029190 547918033 324410441 631292318 707216689 211292720 484185366 603484605 440322584 285065159 112860501 15562408 571636236 892873588 859969409 857035432 771764566 945343157 136634487 241703895 695630400 424446387 272413700 695223544 437018432 470297073 802962370 217179625 232784317 60307007 391139294 229151975 832075559 804961364 215403874 426223148 82820360 330312065 544433883 161765898 8816823 538427393 573435797 254665600 240931911 902339646 479320998 59330855 504210783 544695196 437626176 417959776 483096180 568949983 999452285 4609810 380761984 327689778 599472015 928237761 989201567 437694087 397875741 582949576 300323001 932056887 239986675 355606244 186661876 165673526 5712931 249496978 441007102 990792511 274111014 833606259 119156636 753794296 172255804 403068214 516748382 44829246 550530733 319762122 266179174 299296006 14118965 370340452 699279010 960419920 326085872 175918223 129382949 323343089 454905665 510871895 787479787 267707078 307441368 437738525 794481698 906916545 610248494 30667324 317171177 323504449 64478248 965360560 265444565 510414140 625014447 453768402 890849021 166206997 836183232 601800786 800849320 610410610 645148783 675112046 946896924 571304080 987581237 19432126 980228529 34202073 358121554 539656004 196073229 612862862 107842730 791388124 201320002 681697638 685704605 398279938 381036109 748270718 263010339 388262095 644230735 862362255 88418031 852734232 31295784 745081264 887310909 288722217 912056063 518261114 645188043 983422202 350613855 258640420 181544396 983987012 132648909 136387656 893229760 190256918 361711202 23287361 152252632 292182071 14457526 738417554 301590697 405141760 695151225 603504816 195661057 230021856 344605009 229198619 194096198 127007297 37890491 140342191 501477611 292575573 163924788 523256423 971674933 645814394 28716564 944217833 87682187 807128413 141546311 535188508 972934174 535337222 516553449 620386390 711529632 311193649 591549853 38155778 840740752 215428674 249075653 346371497 610660413 541541418 160476888 385512753 446065812 251954821 826426446 757684729 942421791 93169311 197547842 277534993 882135883 369886968 545889997 546354886 317882312 378123599 564968985 235457199 241338059 581860608 30394671 570196251 503348550 826459656 782579180 924041036 20663345 609571854 80102573 58713403 16564609 58932876 602456768 206418091 898938322 856985313 683542831 553322157 260949095 328785958 80093956 315738509 570551345 844482601 227418929 926455978 882502420 401533801 478760893 231713887 720212243 559950641 578605605 177593129 59026639 724834065 636962082 234767534 339589407 557406464 374526287 823151910 326809780 820456593 584019512 657538780 784998914 404379524 540829984 722771038 852284254 929719524 927867209 331079932 692708272 918123867 906564638 987883308 569684683 419680200 430041595 999257901 284978044 777058422 745707682 264974225 730155000 37374642 124216501 62188518 701493382 163635465 419973165 561874080 439961647 136111921 360073791 163552095 196955842 962865594 62465462 546701550 81089636 505372580 991832352 526836514 811614591 48661362 835476395 288647319 666346689 708552858 13504761 283174290 226188756 276270069 990388621 135285448 4991814 725236915 315970101 142293182 788783118 161942380 708341961 992165879 428960619 221673134 516853742 966477142 823076214 694202794 480654481 266571842 592103104 44554474 322455489 900554523 701465782 271215175 646731297 439437514 581185427 939576516 560506928 834303863 974605991 893563437 360441734 658250852 576753668 620061818 301201497 3752323 767447718 41028519 641001334 799355117 750043172 306850361 988626532 174518250 764896317 774894568 429138820 764978869 86297127 265884149 260024815 59096435 985708709 994023779 884795294 951046815 892674734 636234012 319985179 137019780 784421421 851993569 37000118 769036234 155755892 582888638 242547870 387613997 540678468 64425332 714666461 65641107 101573191 451914797 789776608 537360264 418408718 170170786 676493890 908324130 24605079 554827823 26690720 949029187 8265635 549383755 802011753 551735864 168478051 223226442 435700311 13160993 890481756 324608479 386508233 513572478 329428991 614688349 139775099 630323182 365654217 859022607 712181148 966979690 730133534 520633279 170189635 702100811 992740220 286342913 128087025 100563918 162724700 900948480 26671351 819161591 430968196 815409010 556454881 244818458 432791480 330223643 844882887 838750943 873613873 257614770 495885721 486397144 254469685 725567789 808403686 868530713 929136742 319371090 675658700 101330351 998256736 77558870 244920372 649578477 116970798 178000816 443610246 934012043 496356286 951849105 442827088 478239545 689958744 116141225 977208921 5221289 829768761 474721475 345628088 317063093 107859141 552799817 987212703 864846721 774525293 261199650 991500433 115612377 845831791 928486047 64550055 585003176 293866667 195690469 478893752 40564369 794263374 227042707 164562310 95536512 922186778 69408287 79013367 524786831 608447679 883953198 449911043 177486400 623175279 97462346 541982382 979078421 318173782 709816899 808554543 69835078 268086239 708041855 45868070 404571663 873014462 750020107 538791573 267940086 197914829 393366085 89363764 285464880 582093832 702735491 335039975 694631940 665356051 407712849 164123414 438398310 816914214 430067028 167558590 844926726 96448128 942726322 298120053 846181283 616935780 632456591 968156119 715094546 151146529 308276600 761120039 363846669 391000399 355186085 840974605 987971176 448272975 495216543 521869717 379773452 161846618 332374075 268756531 711820908 712029881 21805945 354688536 159936661 963805436 724400045 178817557 86947148 712665380 124387786 592586020 199995941 485119652 379216877 329807298 127973039 175365841 560322851 233084079 234836084 800102941 660825244 602317887 640581865 304896731 453189487 525025501 888973513 488134661 593581674 713811830 78001043 225114357 72789227 585304844 143079883 504890022 917687690 905287368 790056784 44014934 10366650 126416299 293461846 688421474 209023245 570257555 192662906 76648276 319480230 304135161 901984900 907014992 88787508 302574404 845592956 570612197 431597495 374777999 746775658 33373468 799177522 281206581 225733072 372001196 864148505 847427193 272792171 901376485 604275592 190931056 710488592 197745024 121116584 879281091 150246820 251834232 925311876 402508633 298923945 108662768 412811578 511372062 157655032 356684047 809200829 154281794 858900411 936241530 526499604 903773390 283035343 708419415 18915608 565170514 859475538 610759458 455375643 528395074 850885600 679415095 502657541 220067305 89632205 386430963 355394639 331007758 828041806 689381901 107598854 132667585 30813643 522192430 534966300 792070677 624571217 21312428 108678841 838642404 319393925 814496568 759315697 165829507 402159937 207434489 892175443 602136435 843038213 113795950 948544775 834947462 954315779 728542587 782283020 130410020 121145226 372689611 690869690 487904277 186954114 221263129 695003138 707892988 163844823 733986056 579509711 255020621 747565308 162859236 66841272 612073042 122888813 379034494 389793616 905200401 363213887 600530180 471226877 703804026 48818178 691166586 889545474 839562619 552368905 545146753 501443151 906851961 997297869 260156723 266454461 176314016 562085797 475847117 523779888 20004159 87131084 570057576 222443898 366700883 814979094 872595199 453507524 982966261 356876279 466813925 325112059 970678742 529972272 27660239 198324401 175652561 659618696 740186424 163407393 83486556 302384111 850950747 212819531 741871817 938148363 110885259 671824034 752343190 40580027 264854975 200135638 623811451 820870024 988639527 39398377 226515556 440797483 81166520 677985653 840669516 445290055 784323075 147696087 625685654 255929187 823173758 14569726 707967669 501430606 852090659 154433166 252787813 793677743 198293805 228389348 938298188 394473954 503437322 389785595 618199359 400101199 350749897 639890058 659668073 137416933 193871863 902942470 274271710 587891772 866079487 409176899 697831801 338024771 187610725 495082615 134316433 404879705 767873396 762653177 208660270 624922235 207357482 374293293 785536079 310308907 213568283 661047227 717789346 68198394 574880712 489086605 923644379 297520451 569170982 266018757 139234698 443571139 779740935 777608199 857797040 564110184 163172764 963425675 659452689 649975813 777076829 693086184 451685558 250884818 79877224 473020755 969654298 977564277 594506153 942534089 556081485 503894493 197926481 530248491 129978742 77442036 56921577 779463340 219129620 687566456 20203553 857328513 53822486 571556194 287259805 878526102 129670652 906308447 516811449 314904294 601613411 82853902 590074549 653980958 132083426 156960843 167500973 146377642 464750839 913286622 174108941 927556455 187288560 301346568 629358963 123789545 39799668 534455586 669960860 629916830 802375061 824831612 309895528 829610079 616897620 890544088 984076992 669716777 75889200 221925796 675950055 701827135 341591867 323413571 176191357 812989177 221359180 528323033 316081026 782191708 456287121 510676493 22836070 414934707 442741838 812665063 900873497 273839802 604950337 54804778 867684583 805145822 899993724 948117176 67254108 165993954 723007162 401977893 357034030 133078203 950812938 789390169 263579158 400446558 160738649 747036366 825139361 859750243 437949271 193476295 406282551 976804552 897284733 734662615 327087215 83897233 894150297 45381575 792974775 555832590 423163848 686490508 430088432 959155529 247848665 522994309 556121523 680171719 587037498 214833004 968736167 494093224 640072390 612043443 913872113 79939549 162983999 238194644 168666230 606813162 733002355 81840636 433963168 306986849 614134172 842005724 180968842 505846719 336241684 121325590 423060058 879918019 424948259 635952262 635587320 473255524 787731243 460888138 181769495 605341666 526987108 953058796 818880683 336409456 497902625 861302323 235517374 695467857 163031384 577656653 822155842 631193551 872474176 870427629 359813893 871786651 448909806 943284741 933458125 290724795 508172620 206488233 999473150 95676274 519259757 191565782 182789923 595342597 234879829 377568870 710348968 416922296 642640021 463804410 552266535 98595244 333888193 875555053 157943687 22307345 945650701 131512521 425418945 911038799 951126559 840379394 710234525 974603841 211749274 700686877 885855716 127876331 803226459 8617126 206215567 679508484 573981357 446303677 838351676 286361982 601105623 666373492 325819034 621879444 931171880 523940994 552110649 866532992 913082918 60463842 913738210 874496861 397128949 43496003 127428524 315486587 306923521 409096120 959010877 59129951 941018542 324317227 994989619 760394434 850202363 543129103 67041186 780592191 802898679 673046359 795948074 547252943 578198079 427604303 660529179 689223147 148567798 944385942 177107518 899641487 538685152 407036993 26239330 745136366 210182713 344858569 405992294 538432775 142541134 881884774 261465315 511628093 943144696 615404694 187995930 562420760 339731998 879739371 385188006 922278680 735913044 520712717 90470923 688642134 360934402 286066831 912007496 967060972 200145298 647467587 726633498 704306056 339300636 861901527 546704452 321744422 120273160 638803421 587660752 202803944 781154169 643488184 964458838 747571169 105545141 311007968 496343326 14559437 413441381 499977999 278336362 710760214 642390928 441909363 976265883 546058705 198998140 815660103 609903727 416949775 7511383 850759271 927118612 902351662 11976910 315847940 882255577 740386061 517707300 174035640 546357872 79454833 224818671 603464884 335432774 17378099 898503594 16344877 2154078 236277161 778576131 970836158 892751650 483960365 207381132 844107160 479053487 117784818 114821039 119329172 696625735 428389716 298136683 384948099 880576768 302060174 882607379 450036154 288823455 157839934 22123475 837407634 289289818 298643553 836845455 474663915 560411277 293889038 232229252 585330422 283444155 155178335 401499280 563058522 525404365 49144575 783366258 131520999 701687465 884402749 368412953 420492228 243848868 216135764 892558884 769678895 951493996 484423970 989194350 44636782 999359377 390159009 790409329 740739864 202656828 532489419 526031841 361692140 626246107 502701302 242047155 922490251 546232878 879071681 362146655 352123850 240749395 104485734 690449287 293737175 427843014 42746676 369194202 695457935 714227115 860571392 277153400 61577925 136989041 693831367 746566127 865635339 524914664 989825694 14994750 440557859 915233100 486791885 554592496 975461421 603156028 130166649 995851370 883594169 380264791 346524286 948394377 70816801 22473136 943607528 774824616 238396232 670581184 276952239 957891798 867884070 609705366 541097217 127882719 989956347 350363563 142331897 938924116 18394136 591975181 810884950 517433732 825148968 122797646 127158571 506035967 295437510 669700994 535714122 367890160 418721041 454872515 247176614 942847092 304699642 708966421 395248417 776990345 354840397 586610441 124764844 280982310 465426276 130028720 793957314 50674408 575880062 918609073 900805826 754014659 905036851 375017176 23925517 641794716 887810103 168012492 715701322 777657988 618848258 326397463 798308892 382665020 778099117 824612549 889116295 836199158 691426038 442317603 332207592 51728278 295412109 513203497 631373867 832078532 426466836 561511940 889465946 92415436 793696769 54185599 638395166 372387035 558094909 824053501 965132321 581540276 941250379 844132889 14740708 676263165 857882170 267994192 821276824 19484185 919826474 473262299 962478767 164451973 70961941 195410622 706060303 980380284 58054365 636301058 255094083 142951672 617215611 138763412 114637548 232165589 560421545 163332961 316379300 96847153 18611795 949690487 642237794 835144770 380699408 420143400 320839978 331071849 822762184 382888989 933512394 178714831 768971027 667254186 785591900 630207583 258947059 218718463 716000638 331705003 524248651 660750861 599641348 902337670 793979826 259299891 853722589 68866899 66560951 882556347 796725044 456827693 562998895 909698142 820479716 832499500 260285261 147033036 267811154 342601073 73838525 738327621 435566227 137167738 930453187 422126296 639127566 83822803 843073813 57155188 165303429 351523724 24626430 745008412 495541880 179279033 73084257 547579740 151310658 593659037 250161024 531187779 706512057 183512309 297785396 830795778 819730691 554259907 963592293 852006580 879865234 68738274 838066872 181977920 624531532 199732747 150613999 484222309 113688429 943672232 912592953 18718859 826208307 612331930 279512179 237167344 878851732 247575408 584223237 534818445 300463638 825902028 220763887 196863730 365752723 909138379 170546885 986083394 591735326 206380650 368564003 83406721 615794276 120438086 926061695 104756999 225518680 125969798 946911424 658121861 186350014 56275012 389097374 263575960 114023046 324620268 807286533 523055288 743738610 387303049 811620169 119218673 65191475 631314111 525924485 61147707 579897513 48774246 212949755 27310070 774668972 20934716 830710952 754509943 194830424 73767221 845822481 331752600 899974801 890785487 941112729 969696694 108842708 202029549 939391654 781330626 840165654 913878714 163490474 225821624 10209407 853316354 865819814 555193246 846018501 184671342 635199453 184843609 188048355 194664777 792365249 316621691 917179299 774417646 427837387 748956729 893053203 867941855 130703658 832204295 780889034 163985843 834801335 990675226 394370880 63042665 559120124 868189345 88503794 875742625 676956894 845912664 707917306 439769320 383792190 511518199 958792656 423995669 626826834 526979485 570968408 856986204 756157327 937341393 502030045 746009686 618560218 633851780 938127311 527470791 503740119 869447737 14865968 318196019 2978758 492983762 822674109 324007103 192006938 259337839 658375195 664400439 940885163 973834894 270897519 367780535 393217837 792145036 736967843 843091924 223006761 888272267 573592907 162007761 486684865 180178022 548366036 5994911 243940995 472780774 663814804 920654346 750228503 180246080 752864290 14684503 304268464 563408584 168371579 242149285 413508911 905957017 858362197 226937192 315776940 280948660 736446214 79248922 101893155 849988583 400184591 667644223 759722903 539648766 6477565 265294321 698270200 260116484 615943812 843126790 747235581 333870469 294378035 626564377 926510928 361413325 843970991 809278253 53279107 870405829 332857376 484161483 875222570 745891616 467765914 848091451 357641596 502812218 840002073 401923231 940471042 395004409 724507053 263278575 819482222 444959923 287777445 760855012 870208837 547107229 342190385 615722306 192036205 476313207 292722799 549318714 971833893 109181775 86324487 664821410 27747636 773011666 536283946 141156954 455130416 275739237 684716703 250541531 759545012 532509676 402825687 312809536 924545911 110946672 298683300 623236616 316392037 208884064 229208650 557309036 674713546 740438196 714639557 144473991 937569508 347356466 979463982 796334982 473600889 544432469 703550579 504751519 165666166 610580607 563203216 514714966 334475314 54980193 144981111 320660070 842954503 302449166 59881928 562255380 126379340 732131766 588723960 738724783 489985188 112471488 694294882 323477679 719267316 754167697 19801695 667178125 914995055 835678493 274094350 153588059 738923873 329973670 451345755 186966824 166880841 10906208 82515939 943348288 285128457 334403463 351457846 216591174 727496347 883202097 837488493 300664703 28007925 205969130 133405082 84584205 253757727 487694334 21241413 56667065 669052470 403925307 980104038 384476976 39436070 514443461 659898109 273158296 89862822 591454799 202731467 659527904 432957645 109661673 675978883 459733701 378307169 222728465 302113371 869432534 786463527 119465336 169840447 454793817 155258720 1179208 69260557 14192517 377266046 510541855 357019301 276165103 340697144 182071013 882172000 743306716 412134633 647572170 207934614 95446229 897085237 158656455 281221553 678008646 381697914 295194930 576546774 821625328 497892281 94470344 40323992 171333754 63654247 500568920 503676287 118468502 53751866 577208668 48118949 861471582 964184067 809431934 934836909 622067446 408626491 564876075 597689955 279981940 301865304 102018247 991873348 563200794 385063789 702958720 892889798 93986345 107857543 160708968 181806072 332638951 169694807 17658807 545066237 741792962 165659848 263312746 49496603 470691737 223902896 876195131 516326057 272586775 99228156 314932027 928216200 467358845 518287237 668036115 67327285 574836552 500814469 791766825 174139685 915641445 508578043 413863106 591752682 399711551 89624895 632685866 896017457 348624485 322101408 161611578 713343774 729289179 69984015 249735656 908687958 950824524 892424177 635730111 817050118 371928946 624361098 762402207 790156484 745770269 496992981 520265463 458345540 213285864 437350927 60027084 774526067 318767542 905119967 696833684 867513736 922707275 770593739 130923016 833480816 461264160 861424278 832895508 250308743 856799958 942752389 955759466 189697487 571791707 496429434 922678727 142310875 135704604 103533273 959066625 144594046 674730228 105521078 75066921 873345926 375574887 279083078 348024162 722713530 928074365 998873069 270795536 635152616 811920815 231647573 608842408 145202492 20193693 472165958 646702513 611847789 490806397 274301028 159090978 613041074 198707508 160428932 166948928 806197494 382400276 707323815 274357709 134753306 236605148 986283412 702241867 224496711 89491886 930057844 481158704 144113622 224492135 842300679 119011014 268385789 959770902 710953574 819277023 583032906 418215370 331453021 277840135 293118592 22062669 92458063 655887072 372964351 839994102 455610495 26505072 17447763 940311721 381604919 544557585 509255208 133968721 284420070 975152993 89098157 457863846 451260451 781378276 338342110 287632227 898641840 843945238 719126044 729615318 269937955 911043029 132401871 579549254 18802537 642649035 719384785 631468500 488814893 96347514 131882337 370603687 2125804 526922387 703123842 749454369 503335530 326614652 733665982 232836549 266732117 248205634 606465224 584858173 751683576 327257045 862994865 807176053 317595388 269093939 95175188 77330744 664614801 815107628 192535913 38585569 723214239 622162812 204817815 859091359 731657741 439188574 323177564 497153088 899731987 915420312 980717493 171869584 543355052 199166695 740683311 138539545 554069205 580459624 184685632 651859576 309292282 489027122 751313520 320127635 579174702 434516398 969932459 167167453 929333995 122751752 538204304 739286546 712043913 888286467 626672276 432770902 863534852 29449702 822743107 73580668 331241268 150920028 336748760 317457233 377314805 426527429 285015232 757521736 352663720 770624788 59471391 781381753 192930728 608574300 651860845 877997579 427964404 501429272 8136 765841044 414314047 704848808 469158782 294487734 150028608 332137614 136772448 124601970 225173389 2659156 908644152 328036385 192042445 427830904 740211176 518619198 126067237 751142743 678915813 984049808 259342652 733797076 933043470 598761438 243709008 760332219 718653854 723908299 828377166 53803597 915108497 178358999 782217124 832612888 590066661 17911193 676275523 174550462 120353238 415220837 89101213 210549901 635077726 678199559 446919685 217344740 352977859 549631301 410210347 620927959 517901442 990592747 154169425 298701555 301868928 791163820 708709 452370874 36853362 78807420 824369809 799775168 868368515 516927338 275823875 195736708 869214477 110381344 264932294 361373258 675167536 182644436 339840072 769123945 600687345 183493825 368751678 443338732 573448181 636665267 806042511 660655241 861387968 785869207 411480825 429292415 835636417 840705869 366074445 390203586 420695498 444343653 847939130 742260223 892194320 753519571 641227791 871262085 828797531 939177165 971754607 632223491 276142207 47094603 310379997 323206680 145397826 115636497 989157091 918302977 297852736 66530167 86575812 34683052 930451824 798531050 262722917 780185925 649070485 212561609 759500122 152583143 690602870 697155698 248416459 451037956 494410171 420243904 451832112 874536427 56752683 191117222 882008439 276124555 527450688 27369299 624757741 226418489 674532717 921858467 899435874 991341782 700355304 302082123 502624536 784785460 597907316 932805873 838076640 493008467 22548657 766503561 335378514 858852976 132452926 326657059 418250506 523575180 379839633 63939908 307197300 256082601 292730417 50724949 264656411 529780836 891803476 417621744 859875577 708508476 574569270 272925183 359048752 923521224 753644557 8418666 277296727 218042614 512329396 348596657 347317853 882864485 995761503 441926946 921922820 136875617 352612933 899421557 604837907 713575955 608434441 959479984 1455560 351867798 181383593 291219905 681069496 627348632 764298523 642319399 74432135 210521533 344673805 342944861 82713741 651237065 669106550 685263345 527036854 634544663 876996919 353952937 23875731 556433119 863986639 250191176 235862855 92008218 17031486 179993546 137013628 418862909 886020824 281778416 265605088 131773739 27384117 342240123 52788481 260114034 432249502 157455825 348605261 309247030 216811357 26138333 497539224 693668814 902977032 354790043 704810122 157730785 962444502 279717060 762733205 612394705 171124153 634430154 236703632 804486474 167238458 458570563 941635133 325813857 628064305 312052945 757711905 454239870 430486497 944671242 624048522 15793849 50535402 846419868 188091819 966328867 529857352 195843094 310705568 121181264 622146715 628509380 69350034 519733820 356925850 692519955 266660166 337351767 389490300 627225746 347442162 399467200 471429096 514533070 95512588 377825334 191104335 644154543 535825269 195575411 536056166 664139775 460615528 100965337 660991983 549428810 576860828 352769845 363801940 943473391 820747985 54760445 941594740 752488653 457303805 801314724 254188501 594070428 402344944 145227790 961371976 816420071 396977258 773423195 30954509 825868225 430900880 234637595 902580152 76883524 1020634 633659284 52261844 821178586 816650232 823120521 354437548 851717403 841159909 915095168 911832534 790108743 610818643 239718577 23751029 976950681 869827637 966938497 985539685 215244396 278084306 673596029 929247341 784066532 359048003 531386956 98620345 730484515 792790276 985792469 763117619 53917598 420802068 891261706 874505722 259893858 506579087 862585823 982447180 442534697 186687425 306262065 844503325 98670109 796357305 215171794 168806483 385224863 463153732 422720817 63346191 921458763 176457499 33401513 324220378 605554750 768195132 669972153 90594320 653006028 555968030 448387442 590581417 262415404 372107341 293739183 381797 333963829 887734708 186138291 504361333 493468918 518075506 536676604 261789873 808220705 4731032 741968393 502968134 457060383 113418785 489594357 783450638 81297043 803046169 755845000 979598289 824436087 500645041 660981862 159584171 879785060 402050139 844815749 289245496 613141775 775496027 68165806 623675568 169095202 114461345 928776842 961121681 470156136 601164125 418178187 293800825 118183347 59490215 492463546 392572816 926093235 607331660 983379994 758121202 960422700 973175451 862121194 913895421 235229412 91220303 863190205 51958035 129082174 835149239 644200950 204781823 692726637 365512688 721801368 368576469 654135512 398102788 738062565 264436353 29574704 641465185 454830892 379191480 892282101 110956792 319978102 733985687 19779430 375828997 407651616 723173532 797175378 129153998 467997294 930791625 813968417 569416372 320387505 847975292 180390833 333836879 808326770 548350397 97455929 604561930 980797925 638266531 795742091 730611948 564759366 478697044 262552012 777671118 745030935 414696080 152352964 836060348 494830155 806746814 88760839 272485082 924412966 628648502 7640926 638100885 243189261 414700268 345731911 694738363 857508412 663172308 540837365 143659174 629911732 808986814 513322613 753083983 569649962 422913809 507552528 177375300 262984852 249221750 884339780 665002741 969412237 477163360 264717861 756714721 407662291 572411072 590511180 195595590 95219318 228450109 715905807 185043990 659052188 739547826 964756124 354115833 396196813 724077831 260925822 479095951 450893359 166881046 216682641 689149833 5449467 740550977 718747250 476654816 248488920 403367074 444787992 388322681 905987872 666751728 827640951 303110588 550891450 848969708 288099830 575837521 939720589 811240018 79072325 685021575 339132697 548182851 551192207 392271134 67432105 670644521 925090142 11875108 629771737 826730018 77242287 107912582 770261745 679481998 605133473 172982244 251139480 64943708 578377843 312939166 453387074 799481886 778481029 533069433 947094208 432576342 385511607 612714736 728358261 503766616 128602776 588361293 172240796 916177219 50891567 470176759 682203004 873158932 820664252 456504242 881483300 910811876 644448010 500537181 341265542 487459291 51913693 978055646 949829620 850195001 387827243 708075974 749775711 575395190 199096372 670696135 197131943 516009322 576405435 32644340 483505466 151702968 91993862 298162708 464602154 883608716 229940726 998971091 885570912 674290805 168631687 721236711 768269557 926599961 282252928 501341600 318995254 190800354 391278204 139083033 408317665 562354399 30382102 954116365 121383460 665163392 182170180 704384095 925108109 369583827 600801701 722232222 720470064 729799187 172164505 134446620 438690962 855886789 864441376 466740939 795791219 756896256 606960048 209637925 250775326 769308533 908838708 975188314 801640545 726079574 367447976 524902989 783484386 483055199 195999847 720377260 90530240 377516325 652623745 33884922 885427246 714191866 135849601 705035664 638785180 661142531 433498242 752296552 999393507 833942551 154259537 772646393 985002816 991311216 119607974 628717598 741872677 636996071 93300365 312542166 863040089 179197762 983701573 203620091 812104103 739192529 205496853 213272325 610858328 948867055 259924987 695906551 627083322 262769413 926684131 237010476 125893023 655060163 629961018 308245616 32279088 717077579 373956893 769673134 825675843 587682459 800329632 346218621 115535807 965511987 745218248 837766537 688443459 548566854 311206023 468630600 340135879 266803292 679854592 426189238 210322808 953392273 202489524 722281677 135573588 952400707 960853084 977431816 663926417 778452076 547631976 363995546 510278290 555183846 475861138 747660618 26178733 228054440 925420452 310251576 743116711 108545202 757174322 179827461 527352271 77207719 186211273 341278987 235684633 267154561 758887674 50045025 670885903 439367099 642412401 335843927 397740192 562006021 762769802 711136506 211050051 230459017 98394114 29707560 477571447 266277258 69047737 443756558 647209579 31794514 368811999 929893040 638014641 259622555 213271520 875481952 121635348 778336962 75154161 353198948 500032329 873344561 58455478 130821588 976427052 409254369 386098657 769309563 158986765 426242188 579266228 385349012 105917163 678277595 743333050 600490351 488479745 90329960 537248074 254981467 168215493 328769960 897726705 123965788 130507028 46473504 776472086 789391052 875244208 352133387 797884471 487325405 37193693 817846141 197254600 929693671 859800237 79929808 534006683 892499984 252172634 534204277 690673566 586752634 62808945 118421591 235292688 210823586 294928622 800384009 637719989 621543377 294024250 566744491 318549971 221546963 368877335 554736227 890089571 729664307 688763424 624530165 297811758 304084410 584944572 784545804 246298440 273323640 35099039 373514723 408270284 370274229 363958585 593999868 941902673 615876409 206081327 850410269 759272799 748099219 45347844 651923306 300749425 453958045 352672682 250179796 903827951 11546288 19185480 882219067 187540235 767328686 874152855 571690357 904658143 621049030 131435423 934279283 464638126 835274367 347742305 39603690 592839957 823069871 785812769 134014398 986270998 380948099 909139526 72568595 65775524 518315570 915441935 983584212 178064827 400188733 471478757 136268780 966620720 836289111 328384383 71262625 222177967 284727238 852628389 300749205 758784240 473861998 300953048 993330910 907695801 145265491 21036980 250541396 75142803 157600486 128583370 246201702 451606458 550578396 913307665 912059448 713430600 517344349 375411758 915822535 255305407 101803069 315640492 274335224 425214340 597109895 830907485 472693620 973698046 474908560 859538659 890100367 782507306 512039576 154730895 426433492 479391973 254381165 245898319 923889613 596431439 193731028 863076746 896361909 922118446 484373533 566971197 650593340 390113249 467686026 361354354 4342843 275714316 562107087 389538728 789697564 537478203 908059132 478608477 986862630 528678816 209893829 494562998 506241583 709497185 821432887 252183570 336788529 937263116 99304157 884915171 114787882 977662645 573760313 429927133 221259717 933409133 232197675 591897423 906754504 801706111 391168593 38972649 504618378 64934021 369149875 11708508 958958315 501440163 131273308 317018846 402013305 78519189 572811336 515210279 658610662 887142113 816068194 869036318 51986405 679395293 156880500 999962303 951007192 231343711 353507215 875938231 295496991 353211275 409641321 394434963 55032168 921271756 209950044 377986078 696255100 272943516 59477910 538418525 291777412 289204012 347268542 57815328 898032067 830155393 460590722 632415178 324243911 883841881 268080522 866193711 731008886 715045275 928102332 27983422 786594945 192289495 535568718 967636051 584797853 693951045 470136283 988827488 300224672 273083841 323671871 914547258 364028067 678051658 768699572 531777107 961319290 562312335 789484318 636284410 409451330 815933828 214336153 232101374 138691886 110870962 515330788 938510235 230512155 604913699 203816974 182432938 119035857 532839760 729849375 405847402 212649894 866343701 230342975 892542701 77279478 814769609 362506858 988282189 990770558 365168728 452894146 367240855 965636472 515555109 492220941 550885590 716673734 845084488 892259518 586386471 295160991 891060059 21347935 640192182 382445965 583682991 883058946 679144871 922782419 345938264 849065421 695827824 182714777 54686006 714834565 663703340 776066432 195009197 214861311 876284811 569607154 556681890 939369169 550676 6208192 200023563 234804167 686920291 727621974 830513309 852407813 427475114 295196272 258327796 848379203 749403857 724425578 948325576 51836854 158001168 558468647 359072677 60315374 231914728 4418120 442280113 251940924 550469015 664922185 817075390 47068136 662594475 871106549 665247956 755156335 367315794 187491978 902486826 310250459 621182716 231270540 201422995 938695877 791380031 510751543 289057388 287184344 105448650 247517187 244485890 830857072 120956587 941063997 598619005 830096443 650550501 452174886 423701883 390881488 811617062 953418491 648660266 688605988 925460243 747893273 712779633 705595045 751812616 817829014 512251457 381584217 845854955 933363100 267588564 353291801 842795187 862862645 212789585 723182809 46969435 256706601 447269270 499042256 471263936 285183881 599276321 861790049 76229827 541553488 16867976 655403595 786607170 154075846 869853300 331642935 837057840 845696432 375770260 981841064 907044476 368863970 890119367 88723349 310496734 951996105 794571990 651557229 588421040 296517163 151437868 822499873 122510328 96957938 31903138 30242140 579458391 932023102 407331762 647921409 163316742 523508306 449174450 126749977 69349111 389819681 797697767 860512644 124776936 948260019 486048378 637305588 419090024 32491344 675365513 225381726 766613884 139910139 493254911 671262025 450939615 891860882 558306422 629638740 491067051 840026971 635634927 913835854 546239299 841711741 83792130 468176311 350036111 772686416 426618086 878994791 718931656 174270808 65281235 29432552 614963048 619335937 746428506 779310985 364801720 197138503 316316325 830454669 505250336 704575035 584567189 485818168 629313360 133012671 147617103 717875650 952703885 415422825 685394292 29927022 78316738 12406066 17288003 387997705 909114139 984896617 446368604 88599299 200146230 976257035 14191090 329600190 963710933 942936140 361818112 446344366 386132124 338205501 424964867 60112813 780387814 106103522 44889605 679144396 649526770 211980032 172138028 368105797 378827581 87420110 846812876 76919970 812341527 925329052 544311399 763268566 862191392 671759162 218649024 434137790 121297271 71917614 877349700 829777369 296114337 687899982 1692439 902341057 190507365 914733951 143702008 281642807 683185006 733764307 722566638 936422336 311880353 563720133 712256252 18893099 839621306 466085576 766216830 170410919 743808722 216039509 45129139 437910464 927707260 698500649 735874651 138581509 163348752 788465169 568204592 347836454 238470811 449469972 624477878 98093230 620965185 154248194 115735518 762767780 650737063 721759044 132592477 63601970 504121797 769271538 16065361 650581349 888760569 5339878 610194166 366592793 572399369 300114680 570240482 574867792 751780318 409600711 772429596 376266645 805614429 116267805 118637974 841823441 162885525 294808404 377570071 96614502 659382081 29570144 485789386 269068604 681116294 180718762 903874811 893228310 807592727 21524946 469621725 305393824 27438808 425957029 833379784 425245113 360789833 466355886 869505788 974482781 657829454 86198888 621314964 541131511 500496038 17229406 449438309 658936055 756406676 780646871 713755231 542359748 207665441 765875595 131930297 645994198 996300532 901969517 11251916 417444856 585740297 780419810 583385813 195408575 558767342 103290972 196826657 930307635 484021924 735574578 402171831 402085689 540075604 823133349 116017357 51238097 185724646 590671857 943472021 978586083 133576589 933104021 203837511 85287088 557720596 233713242 808064577 523324537 418357142 990120384 455520787 857318381 294712446 626975209 53391050 820758451 213350951 440564371 314555243 343033177 724727287 420572155 217510678 146314700 871390770 307832546 604414279 810941986 661584974 523395190 863820413 365515932 931329514 423562906 933309554 713318610 97077236 594629878 613211540 514094080 766164540 204125104 71214591 53506532 333534029 706086 137681849 365331240 751431842 553573238 471163492 796930487 537471943 912473909 876234781 14994571 718815733 524190621 892421732 662663186 152046549 939611347 507369188 723372873 343944406 710300161 139046849 445835734 661246870 620699300 772482320 850760470 13178267 50445555 814204302 769548806 189312792 300076688 730846883 253115812 613020482 992897780 634578100 703293592 651118822 597089291 871971424 256667554 167879579 489292529 446715202 369029071 191875256 54804558 496651224 318177953 356878797 957041388 87644984 60060740 73471272 806990090 438671850 223894627 776745034 61732355 925356099 367210679 147275032 295921605 86389421 308182402 205931585 292153881 892231343 907338474 858449506 751553546 339885914 239653118 410465571 703899010 295073083 53983325 556155475 465952143 85984324 946089399 299012521 223847677 376759253 99049594 37127680 970158410 716760228 350246696 974640428 518728750 640799473 223088877 168180308 127978581 187721135 949050897 921031150 271286639 191812977 830843637 476603557 753845880 304150403 228098405 247384936 883343628 505378522 301389254 456101871 666614813 68001731 990333778 249422654 626277417 760979363 424197289 722716409 734283953 9660800 38662779 272666646 433222764 481141963 377894654 276772148 957666263 96995917 358998697 292692983 431636606 859231325 680729539 820474222 268572054 721912889 636222362 282946766 77775855 144728858 3381043 683173628 784249487 807697792 817142602 34618660 754650619 102676084 278710839 449399485 255240359 942535123 325211115 282813908 631923508 77981032 766845357 289053431 298143796 164754651 772975560 255619963 630207 63032225 339699017 898988663 3916692 270086831 887157006 232348012 768450062 1107369 340410771 142092584 855556154 470768284 159173749 174775671 471543835 521991613 587654905 822404181 373630909 568226791 62414539 813044883 168073628 913940924 186038971 144159588 838601602 905243068 440651652 936037377 613317317 629042535 891912049 36728413 612715043 646401223 99983858 664505128 523907457 67350213 912289189 216576322 410642258 849817532 513015199 171942079 629311632 649355555 89401767 831346127 787821681 206995807 569500899 407404125 957981262 400415597 101143750 761399931 983638923 512752061 913416784 982584597 332147684 367640658 437454729 93817044 513051422 502222953 245051412 591700444 61094742 304167711 727213 938307043 623974235 158110609 841349176 822770427 554283692 447516372 109527451 836928300 143193257 575781033 656715422 879440450 306111723 736183114 986988832 561347601 839097076 692831187 266238291 840538861 179012467 131037398 597877822 541817527 541373906 784648787 113832927 16452697 589466690 38038233 903283676 955390925 736559276 150717486 886934652 935657908 255838516 128642010 546987796 950223362 498317622 954796330 935631818 320417013 488818381 513292292 36991663 184081987 251227589 475215605 966881499 830010913 945226042 370020061 606484994 422506845 116886247 897014618 364142818 673836500 53455217 374065130 234562909 366218634 678546854 328405252 366021429 767926142 663889171 878098991 524462784 873411632 675760164 656304437 624223985 922480608 278324106 94360705 18888327 549621024 668008253 483013415 91295911 905943738 966100774 10207312 902777787 594924181 349192582 899862458 764472283 113915491 678469904 560522155 715188884 630836502 490674811 203758193 333550115 609666435 931665023 132518188 361819922 213351154 487815831 955644924 523857529 303278140 752165463 495632793 902617866 971419968 484289403 900130281 919007299 661898420 591512353 653963039 402542201 480195954 131660024 757400528 765973009 669721320 567885092 405585186 100909586 949149270 838432657 324513746 245793801 851529654 104243599 37361891 906363805 886458295 734542440 603469876 237650713 10370267 963975478 712876719 132918228 541267237 855797649 362220725 840144747 924654143 20556643 914440581 454823699 231340212 252524569 734842680 678374106 531091465 683407388 415493052 297636881 879164647 497866109 568819685 451985455 941184090 60918911 871765774 430248782 596640871 839749480 307712665 425458764 253262477 709788956 90510254 743651748 437048111 199487518 220564772 70307392 872438080 263400291 64267904 864701851 812664913 505382010 39640706 455094630 378027725 638113025 42033562 289214212 381387449 361947572 213712555 467610771 641758794 57801108 404746143 85766298 250558183 829684665 542795821 945625757 794937156 826895419 717814686 755200937 6446990 642903154 856682625 753264497 176770815 792596453 138148440 776413521 113075697 872032853 262199201 270307183 420799632 411683768 120335468 874518216 615201301 703121601 288068649 231459214 414520030 691223448 196848331 780130162 49082225 818872653 379828414 814506957 80984574 595304673 943571014 637885454 390522434 756237609 303059953 993490612 320225253 675453320 586192592 5144285 100392706 682804526 75435418 578876145 400875262 262527925 29245652 189686 415312355 109892684 410697039 467148266 953952493 288543869 891591137 850762426 641917951 31872906 359789368 296380539 346775246 377151804 333104723 739673809 545318371 832118018 780347378 54171022 763130078 719058537 73800982 150755853 890528280 34773356 395064017 942378249 583145579 668789510 497763670 232484873 744119790 207229301 230535196 367259553 879560522 690921170 402509621 990092241 537134210 602923132 604728636 135794460 75751711 84068984 444071462 374476221 88859960 297684610 69421171 12522501 479201501 690825189 37833699 176947700 817941690 636951757 617589888 36035398 679159351 513968601 408284544 115439614 472592816 578458345 714891849 483039197 523535755 405036806 511106876 599892954 954752915 927941077 145247092 715348357 609162456 239230961 544211983 971215681 356375366 973112196 898321776 680142434 147248980 163517336 533341226 668560187 192718788 192804522 674918354 42863316 472433599 166801209 651719341 758267199 350592616 896650710 956643951 851904912 949450224 472041267 997903522 947706063 986702938 359859480 507230113 547728382 158499428 668471032 952923203 541544846 188751290 623738881 236741361 969011340 325601286 769250022 468550275 36304343 257790893 98299742 958770903 914176307 570729414 714901511 117683318 79859503 56413927 749707441 472872573 479838312 701966743 261658420 871945717 879265694 547894446 505275057 633036791 23560638 280623439 721417486 78692989 607274446 587399422 939844271 32275194 713724954 913523650 655521725 841680860 616965904 923218706 542283017 46049251 823491192 71169249 94149761 739640090 69212276 5972522 726783495 427473379 766488642 504773417 872072888 322405855 722251235 516149171 487993552 342745192 736098027 316373091 431251907 257310812 179470266 223965264 484205591 369918684 899361156 450754611 711077464 65843339 851125124 257935144 296838611 649546224 803489716 620583993 400949912 323840581 344181627 9395091 458756120 342605559 662513278 441085790 524261932 939941781 815448114 537930376 61740703 833530276 592157808 361332920 348376327 242865395 958777895 856833791 51454410 56121302 428261793 79963554 911858516 376015629 843303965 926188901 347341168 114907930 781405688 893384701 433942944 204694677 196940963 509082125 737160245 117550373 801878288 67706153 905304416 567959256 88922272 607984024 78577664 992541557 724139859 781337399 989347201 964174404 25895697 634631565 234821926 517148238 601195217 423644906 35956526 468903370 520752158 34517652 721332780 597391373 363795839 357760200 887267536 258837021 472052520 61294934 637134161 789370061 702863292 114911234 17984954 688183964 484123416 542090128 659844122 68689188 914245952 319647843 313355454 959073331 913489057 141783220 411097922 725524926 76746393 686650978 894735819 850443656 451361666 735577846 195268242 599415097 964901702 871852237 966635724 49793135 807079606 778325464 726844927 52557967 169403530 889347968 700231745 356989748 753144537 214152037 59697002 381795004 917710527 621045924 326111714 398735263 690832241 704604934 202659358 669964427 685782835 793365322 236694043 307290651 219015713 186713964 370224691 778766508 565052387 86822834 228976162 800912284 934000965 168682613 216436184 710638347 59148931 904340135 404785243 980017476 173773505 539864607 587313004 137533936 981655515 493013640 988970313 826961658 473909164 94473893 305429287 36990001 334194271 789918771 899096892 51634202 168739372 192121148 996775483 808992758 199890052 113139236 64939688 506835982 239350241 531048112 561063629 227669536 65667874 133005949 956008062 43332729 777118429 69031959 337827312 346340663 931183677 120661418 607010989 982424790 844689462 361703968 881639428 624517951 461536890 109311776 183772322 204952516 418735567 590846014 280988765 983554054 595278676 279273446 603373835 887976899 51324069 508807403 898362701 453201651 754014837 313527533 900500731 313300990 735857787 861689885 284375034 913033084 275655600 779298305 752540863 155100284 323897429 251539397 573442350 119567792 96887395 609651103 211081444 821290617 810329050 540329448 433652743 447384464 146371662 593711952 936079180 173570780 10033367 408227990 655750795 885085424 329857663 512485908 21330504 132451676 483261651 48134540 817325012 142107652 906589593 565994184 184653313 664645072 77441913 531636004 914300458 141898061 984485199 947389782 180677026 557514153 145416786 914369587 129142546 102643493 869308484 743711821 687013363 432140908 585249839 547032274 90094974 713279346 452227598 521828458 507507561 90476570 157820229 333719357 460178899 718521827 471202882 295442575 675967069 145013471 240243511 492459126 8904188 264036172 357871879 897900957 957375872 844877441 261386316 390691193 359021161 313144120 397177290 464265307 126183006 478863197 752254919 264681081 869608709 812524671 939879889 823581330 474147626 307904191 550904939 343067084 326835247 684267824 364821014 508453466 65430685 129218556 519991517 796160252 606380237 834053788 490368725 212871194 312894198 313431733 506634562 727290885 978221004 566266635 297956754 33031979 956318031 649577353 589552003 8367820 853676525 773009053 325890144 209679770 774926713 420445286 510728547 97245009 879054887 815570469 360190198 307742610 144528610 788240899 907357801 856638062 709628030 217455618 497307648 495140085 373411945 280019460 45508392 71642400 964121047 379091120 156382469 686282135 343405657 889438750 803641583 519332522 469258145 230380918 962106246 497835428 106517955 954291876 496479947 364319469 346634470 497799128 236276395 181811422 829407041 719153876 10261979 758664219 847154851 129402556 97257969 511193156 833237320 105961355 215673388 475097800 952749131 347065530 345471000 631971671 719779943 546754258 420972650 524885988 10185079 695014728 999900093 524055696 399340176 927295990 873374752 534818632 288298339 824300271 672429987 741588696 944730141 841177909 91482738 33310417 741629472 105728834 398169614 777561751 571909338 35738869 944577116 840311678 593481521 273304544 157387854 265916250 247269050 510183663 340860090 814476153 638570025 190736602 97201810 848414739 574938179 422180425 5063615 899186696 249385251 302944887 611501518 74182342 274220816 239996545 38119961 593389636 309240368 305318012 198142207 779770440 484135282 201888050 833112148 755714211 196127203 86041439 829699138 111177936 667519995 863292296 167330811 610656868 169120566 418217321 613166594 552111411 819343956 442147472 575126329 893748168 293755350 194155648 292486064 610600952 693337811 40476783 195399163 733965125 482388631 479425569 518193189 199746375 647957760 777422989 569388111 546417390 832335388 682848688 855505220 904393538 695052435 350812645 534474809 487260100 457062164 473053559 786103267 451710849 140299954 283598843 507993133 383276752 272140936 99498394 545308611 457776489 383748966 178311092 359022924 532603814 978622978 60969015 420574171 463073628 357990194 234287443 282870278 982324067 16300872 842453763 815280733 771971769 384241863 433547948 81226395 142304602 211806321 241467484 957821204 101448746 457119940 138017761 107094194 454513362 543323210 150412988 917160976 776165638 621363222 404904250 108075188 652173593 147130635 28942697 997826215 588767041 797996837 195679028 878151082 294240875 71039951 4137465 96832391 108246643 480338776 145211813 657091938 324600159 219661495 169726740 359952000 367922247 692273914 900468972 363820282 678187803 818958796 259358807 994229020 167571657 308772854 921734156 960237486 389638261 188146177 896002788 902215120 500796626 350334652 223124188 992156604 305221760 650900700 398791019 259293646 577009718 762880387 220897686 750779528 583582357 614725047 904151941 990457042 218109239 591532016 729160303 123714143 162955506 108479778 70445973 340791106 543654465 495078953 138165605 795308456 737101088 675675853 7837784 290671952 539259434 310992585 964607186 84704878 691708834 433897404 301039221 387362637 755078227 445520801 212147681 795057435 724902874 984384284 956276707 31579168 66434003 401843055 822336153 102919935 302593091 329073582 595655618 358571642 407984261 250528237 137339650 24887988 620441006 562104694 797567928 255236498 947685628 237613911 636645144 187883912 79233222 704125210 620125035 595491707 533445163 246413171 362713146 409296748 438161440 720574218 273771325 320754522 326877342 695783948 571786472 180266983 504032929 527593845 66096364 842086660 808361095 935326784 25264447 413765438 710139651 327858624 494646972 865720669 372987320 831905564 14997831 332554109 158394389 461251867 802926748 747933043 664085222 32098952 50510448 554811074 408238023 986297986 187407769 165950462 477436637 170551988 756716190 454484076 468803365 642402178 331158711 777629129 763788521 924870595 472896055 717533560 338663672 83238703 271637856 128000184 768932644 834655219 91204193 665822797 886911447 383780825 239966864 61914653 913308366 815382524 171967725 714611574 570628651 803332807 521629133 400571846 497165315 751814301 84721953 26005926 467997728 99308360 829300077 446407748 781809285 426000112 709171700 849780282 559149119 963142212 468445450 630937172 390243341 101840412 163606395 144138409 637469681 804466259 15265439 69763171 756217147 695382649 466094640 697948497 540627474 299564955 52509465 885943568 363818820 881562745 598701576 251316642 456470810 297321277 368440646 24485695 954205847 436976229 28557117 559876745 21423029 231395208 286763739 75850691 485487859 70132013 414242557 747601379 361705048 10261139 384146624 582096762 972391864 987939891 110624791 617426709 961035602 257957387 533688002 308465069 256799865 904484291 42337874 455350411 913593448 399739486 250885107 22156506 503986290 447946494 326943053 433526242 380486677 299129657 214960454 899140983 939520225 219534553 410447637 666696759 351014364 807513312 361265238 934439497 663185007 695785122 899686317 610974597 496241630 497590090 397934094 475334758 168820381 766233642 294072103 589216650 219628403 840207280 304794063 358512704 73766626 362317126 303040319 313419220 35687178 137553230 850966093 914438693 699002172 497815353 286395166 488072031 754907055 937953949 316100036 210986075 475478315 753719297 152360077 156080643 399483592 158264318 866870307 970313160 860776444 315974988 712865421 755932504 414218983 359442540 135413010 250016787 217494595 504733786 357375776 961888530 944608344 228571953 821781240 98341457 11896084 387391633 990677536 42915181 12693109 611880027 630423413 105309034 453216854 464201900 91400397 671500203 439006537 683549493 404731567 413720910 295500184 991382347 486306149 760197982 569658219 962163390 884926764 97359849 440514773 488793516 881372689 892171783 727201657 497178597 839437077 564124584 701729287 959026504 978031488 983354762 140057955 169710857 760101919 181880916 209580645 347698443 904198167 892975379 493669891 696431954 260076463 835947603 872422431 121829469 61544080 525647705 93029918 723960029 979401072 196845031 201017461 417572011 603856403 657791409 474282357 859460224 459721709 799834795 155797129 467781151 60782937 805586756 596237640 485284030 731748942 13463990 724142284 749678019 512334142 478249299 484170695 718408413 338063315 342906197 304102979 199977632 628993838 427744563 42358889 171850981 738962320 202915816 553328236 720683205 735538006 941856315 332393809 39727869 153375410 840414963 593452432 205623205 678494241 236863102 607162124 166354365 822712344 488813132 101426313 359432247 534067676 25996071 466055129 374491421 457346877 471994561 293078592 333536961 932595617 23104090 633677267 972051290 784152712 275324431 952624066 947367897 757931332 764012084 430456162 436058964 730144845 489450582 479981631 670101710 838649536 284522838 199143717 294067350 760703204 73163739 254961814 77689368 191969514 218049295 99110621 468226353 990193570 890544488 144607678 205042691 770852235 191411361 520446608 174120151 939598915 16836758 447426986 351823578 861603705 627831024 433331665 266877346 730226612 707825211 549054145 168470524 114743662 750179075 609760113 375581913 505891605 390026444 159500566 745067044 404601054 526967164 198213350 845509918 773710440 786677365 355897753 319497906 116690274 237699283 851633473 908359236 192844094 542525417 358093357 661514551 132846857 687868238 175043342 574865234 444684439 138556964 94537071 317526237 665396487 405575801 850381007 441399929 589343959 924548396 32496771 999953363 255907571 150031448 636630350 96483021 371833579 522087576 183286666 631006358 107195956 583572588 765065752 173228796 221476896 634237936 912315982 985721163 796950399 423125427 572557405 843702563 128931525 774836146 221766599 322826364 778002518 176917969 20334502 84114337 602786656 925272394 418755558 765844353 807338397 837399062 659505641 946521809 146747658 737307076 518839648 187097737 318046253 756238136 130567572 898030207 919950359 225284862 468330387 873775630 768937621 579809451 213347865 950998756 518087146 233834858 696834736 732440527 685428711 459974482 873613280 529040818 990882115 572598456 222211656 489998025 839291485 245971546 595596804 839581419 283345674 156190137 319924141 408358502 161666748 92221388 138394253 325040672 530884330 233474944 754135406 238847036 759582452 248295638 523036415 864386755 543704191 673964348 827681782 337022701 688639556 274250884 867283012 137703353 136733581 132934942 315769398 426546131 336167683 200098267 556431449 482566806 473890953 544883233 670950977 628823531 354471533 521907969 371933823 429647938 151367951 286727092 589763616 473936022 998970654 295210904 503870704 684654342 840923815 395122374 144290336 253123689 854290582 714300470 704241159 890658633 568308539 479173460 661010093 123349367 137651965 903715366 755769199 534729751 113239017 514908576 954784341 533430502 896108683 871300919 869757805 922564049 558010741 450252296 266309659 630227366 718901372 375382318 934568006 745684852 782572647 874359482 68404172 906041619 787674504 698939800 533021343 137432836 298258027 681877156 899883961 591816180 654731288 480281439 868446588 46395496 399689857 193721131 836910748 424824862 625169297 980836342 55271069 258058638 456560646 286963061 439567534 528685257 467398517 121808879 260415009 989398566 486645854 285220483 259599524 345613927 171626211 279277876 383429316 13540649 242638111 129078448 846129600 21352929 775091084 56731862 993798351 536330052 866055789 370004468 811074014 480681367 932425606 150707061 443589785 335911686 365811118 609763538 795360115 476260318 537141049 37082848 418669678 762393864 201169609 580292090 550589768 501125087 368110225 633710323 159670942 725985945 802814517 896783492 36939357 648057131 560035061 274614003 371381439 581875582 219628179 140450107 243867135 871447184 287528140 600643152 570298213 383654194 7132168 738076923 60821104 453376931 325934131 40520528 720718542 75874157 405931461 195964425 633678791 259255452 524002009 517391879 862487056 283807142 35887617 506190948 440363805 679711343 450339767 881566479 529232816 708548249 439303603 749733546 907773290 779637946 38698035 909685060 909139826 46379680 658227088 846117319 695168941 736169257 155809391 111135741 664600326 206499515 343504939 989128286 428516704 399766247 700025929 500199840 823025639 771964660 246786077 448097696 139784698 431676831 245600061 696071444 475715299 454667856 768863672 929958304 538272638 347675159 857451453 327146040 882702458 799659728 252764133 856475435 374344553 509831979 20929146 475694259 980415408 498477495 925875809 408597452 214226798 585980482 711189668 99234245 947627992 827821037 77035568 555449562 580835445 792748354 466153511 564040091 939843116 104137974 436560362 147831038 940174654 222437402 435075416 675877225 176178075 996752536 716957041 254869423 732390166 38926123 96425881 743515225 818485366 461510068 448117311 467443718 311204940 658912269 875538840 933898558 570638354 302258397 766466827 248157943 196654917 224545494 103505214 577313513 69001012 905195563 231356086 118452020 576300638 943952486 460626639 583970223 120231935 243598361 904876778 895612219 148000901 196913353 128045013 651537004 356256106 326283462 751054098 690146595 57107977 649387680 867578634 328474637 816619483 439837443 756140259 473599900 276563981 791261747 95234692 77903146 836353487 408868007 754867037 543897281 279830329 779648543 592823492 904566440 886643445 923671612 366663176 410225453 403079860 375769032 765367634 174074743 220839264 812010758 973015206 191421587 379412281 180436566 632279717 942049072 267966592 40534633 354909013 799183643 596067738 138389840 686480763 389665007 756410741 265894458 64527707 51805097 581373583 411495880 173831364 985379415 387193061 551147604 146878261 636838766 918993647 856848512 977098552 592459665 878241379 69189313 6151329 234789277 987826385 156165814 259347553 250005021 41880100 66355106 293119423 691149326 325272186 461068972 796297506 336974538 356194397 954876989 61794586 399463531 639170086 272778336 731387633 456652670 409652624 679165655 231333378 414393456 717345572 881277376 850934744 583340384 520575606 757692170 580568034 599006612 342961980 957013115 504529998 782695442 223758100 882095085 247963577 102790467 475467621 74158222 869280175 856340622 638599495 505826249 538517043 985041637 237053304 531754250 614690054 140305433 416700246 307504794 154499962 399346381 800710593 835293822 476652686 79699713 199701465 426604270 350484175 101369337 988492003 751273296 249856424 400307843 883513209 260887045 928150323 251320649 974527960 838864063 372408672 5460382 311580168 866662142 553944790 610094512 759954986 458269611 455077989 493348676 680422924 277452362 585447312 461572620 185478966 50981083 387653189 532890997 204416709 193495627 886100183 432582796 163828885 160548969 468399700 760285420 969265332 475630649 483711542 694479612 585398149 528793462 555763834 904611211 637561438 531210025 977697538 373206722 231763322 879424985 79387685 30451768 976433777 200015594 111430540 947937039 434098643 694646737 520114382 426018735 153613822 679001082 953342517 166657483 874609778 650004756 510708874 364229861 714016580 21791173 395034519 929240238 432262519 220584830 690405846 958790071 54336444 818538159 469176259 860959025 142850394 261033768 148559387 984509234 745997783 261194829 488675468 655237510 750581477 108209102 957495662 404776339 502616145 609627805 404637645 600744373 436333926 585832565 617287843 362292512 819184099 569815723 766088975 790918226 873666994 499369749 479764769 279760354 562279364 477181199 788810672 333710444 201066525 539651850 58471967 81605638 561926593 927777462 330551594 51424778 692710326 974199636 380729044 42380641 244983212 385114708 967401340 862077733 89608082 399378436 288362281 853007843 832933247 612803285 284252667 72662045 247590776 688988934 452461216 48658595 525018740 84867729 114820797 149058441 829010587 218618211 474004227 593554693 940238424 338496876 441628332 931485058 214227543 772052434 585749078 920696078 921739595 265271626 61854326 437215076 935679193 118915503 697332945 95377748 717233648 314560790 829962026 840970043 165648245 562248034 413915138 452562189 516969541 793521183 967922386 160695437 840606246 952438180 950852022 455751992 920035882 580019762 552684621 79805465 664521826 695885188 997489560 971045819 202354758 375622681 161525320 686577762 282372142 867714783 484099143 378944021 789325000 658136960 219432031 76276383 253655322 873678439 227124128 973937048 951976253 428477644 739727937 985186025 313624965 304127156 904648595 96031809 353936626 205536472 83725430 281395332 662733751 943647255 319665837 526678591 538157489 63082804 232661130 609280711 634141240 593492601 559284642 559933756 113927718 377181449 190606465 929139675 607529581 33811862 470826299 383004291 684869115 315769361 893674973 98797650 463946344 952314015 173744494 811328764 788646140 888500529 462190091 983483333 517719765 658767792 798278153 532794462 927276230 330152915 315216329 598264911 821471444 241638853 746474366 634538231 293572753 825855897 395248514 470762989 991148373 172030413 726119134 600642682 786489038 466516929 301869674 753386215 348072842 871313138 417398207 497948018 715663318 222806423 733031534 983341252 205125940 589252692 348752484 956480374 937767449 755613976 340369261 745524383 323633610 714763841 266588827 994908134 81785366 823112224 89034707 284964231 857113903 970339416 256028649 875047936 685677788 583868381 244292539 139479004 239436125 925174459 34658481 453673557 145808285 432086301 429023690 399067514 85145803 157210124 711321581 164145255 15650079 922586913 844276513 500472688 408665156 212668654 350442801 98891921 860256578 709334595 869224412 177666702 902347690 483484770 590851529 508195970 626592979 834607273 607190577 243761622 949646844 580198110 813840396 918132700 379181331 867256680 240989494 788666411 678318300 846250616 472342450 697736042 33214204 177720070 30585682 147078235 835131619 585441941 997857449 652642209 400741590 562817401 639495192 825245073 404811360 997240331 846037989 756549084 806763038 900215183 178191457 990157014 445297558 875957668 443458558 591917640 621563057 681618755 823913812 476401490 986539572 821730290 414286161 319790994 978380848 96033104 638776438 183075996 666560034 676864244 656751285 392222223 535381385 950431473 90181744 345336764 579693909 536481801 680682875 777035436 469860128 295131035 236901431 566703668 307021325 577470436 642883420 736176196 335500042 294985449 781142511 644349681 461139080 733490792 577254433 611829996 876664504 171849190 723766020 674475823 571309257 676525024 345362938 690438839 496223796 742205125 343544678 186792254 226842629 413740336 302537970 153347821 935089501 927745306 260027267 343228963 498203790 700278077 835308509 13781385 642105661 511883249 986812520 914200727 746525827 993131194 253391674 174714038 248896260 971154179 348380695 730208334 913133998 445525966 999183556 850168854 497253134 895838322 672195555 444236452 60115520 682515549 474523953 597444049 59084478 277831863 153768986 961924065 234789433 616682007 914273683 931878083 293809858 879549589 618376562 75452810 864901320 589202026 949108851 942685602 254236388 872372984 671860223 140462489 969222551 844135179 373355010 686050771 157705356 534170190 955677227 660148363 428106275 314453843 753624896 301263610 810099182 782301158 161710434 653199027 380097105 877637667 193428482 322864112 102800192 342998874 767862478 501442039 569376938 513596292 424008162 607777449 732871725 701516457 593202272 212350272 538126874 915983935 553632835 758533031 978945642 695426285 7122151 572137934 510383608 616207474 453837042 159150354 570360428 635358512 807606728 572928350 781900301 450812784 822655838 977440588 453021559 788085144 785916328 209262905 527316724 635885629 699632651 391742714 981964209 864495617 124976615 567236758 26196649 731460153 693004862 677141483 230237606 951880704 437407164 828562408 712315214 992749598 73160634 563567362 125209570 179939685 537071222 295111399 210709237 300888614 204957694 606405086 175277657 826749713 127539177 389204232 961828018 40888115 482180404 448588756 751113458 35558232 160612593 685767189 699889997 873149217 410201220 637849312 178025319 634141287 164952838 90372248 708772607 666546398 460335403 901427625 625734276 401696823 636279953 300480335 609024611 601746789 447734061 145095287 284987938 55462570 119548615 63321734 838681121 27280662 399775218 124550869 431488636 148421844 57323384 539709123 344049332 113124462 979087595 313482268 542832684 799198989 551953601 800514102 171800126 121464077 62402485 807938659 290650432 743864304 771417115 937450276 238199891 701764008 520251307 647869695 147290176 709375043 613221559 41079181 418582282 541685991 514665277 984514453 197213416 708394487 262994837 137600975 641412016 919812519 150749711 153769641 430256832 233631642 76603659 410675879 82956384 911319509 598094820 194096015 69131266 351643770 435047163 248664165 992410097 105468118 89450159 354040182 465404914 208912817 248270454 912320510 881398063 158397145 715768156 711106127 785201439 734155275 920096118 811179951 415085744 449656570 191801875 267372538 494523966 851135358 398838052 802823234 668247700 337811789 374605637 897322329 207282791 416216407 877764101 514771755 758085436 600057441 964722958 881103528 366128543 641018126 581374206 214251319 815517603 467469169 25871905 713046572 712817783 748831420 63129328 342268414 362740817 770482526 957096440 498877194 301797643 102243677 454443202 802984998 848923775 140919745 433477003 586803535 841832595 909239396 206282502 107310011 277804059 146960661 806042649 970693649 106430412 866372096 64811399 543192221 285422250 465789548 76217550 526905377 795277676 840338102 793970353 450188090 412018855 739716169 242622687 850404844 527230400 460509409 562190361 72941285 44598623 230036071 825098892 186090478 791047803 152944779 696150828 687752786 353590977 418587827 788644081 854960906 170536673 766008987 342915793 666691046 113614097 464726458 881880848 354687171 341320882 383325410 314632942 504274448 862286836 289265778 9502476 709659860 195321574 84708208 374025313 274334608 895820656 747849747 194081834 368354670 698739353 254266739 313564820 28133936 582300111 827226726 315868664 130488350 157094428 958503890 888441138 935835156 588074126 593765629 552268240 18333329 981781575 583159218 776355563 869469929 930595771 472222057 846352516 380151927 76009410 624877347 590016271 236851440 585196071 293620613 546299132 237031198 662781510 502988297 675150623 408637876 911826496 429725115 525524353 805443166 864876824 654482160 796001213 244079168 760741469 512815230 706605142 911374318 96302775 897427299 571171912 653383569 331509503 149096966 112716338 343419338 20164103 116556318 623979817 399330064 452474478 648230552 533959778 58497177 851662332 636326 428999171 76618863 856660830 588372432 47546272 394708940 297875854 992876734 73886258 196456849 831025836 173166902 838104743 211442582 902843426 4907917 880829750 146677167 559054053 688899861 673647465 628650750 977227434 278751735 561372620 300991628 804156219 619238126 99889710 373889232 423906686 115633850 752498315 255451685 166730499 378263072 554909101 307064288 943329656 715887936 486120134 25701330 746748559 669183102 261333369 971607601 136006475 981467179 920922829 12029180 361837203 428875519 616242933 52622987 211617536 197836807 566770267 401795569 341131408 993738117 806825086 189110405 2401876 734636255 496591993 555190744 980899614 114507182 823950809 862882772 314292084 421859946 493267441 841632960 108595905 494489164 782678564 353074270 920877444 187198128 713369984 653437929 498630420 422036258 480004014 78602783 466150962 887941502 817890031 354725852 222653092 843221533 677029825 572329517 506834138 990898073 972949626 59806655 377041927 272849707 67743154 384482071 34999878 989334314 895496850 469504824 71415125 371127348 409890232 284863212 85258880 552503467 487791324 387623370 859440309 123552429 712715964 947308722 717869852 594186946 63497567 482945333 733953453 606998574 787572524 6743552 19629452 857614857 729109295 947797047 856225858 84959324 513299190 466366453 932372686 506183582 87180259 419952178 141547011 568116520 137763515 809031957 319921588 672462567 913961490 348543920 566661529 992203927 566974192 66849541 564418817 221579774 267579926 689784734 349931337 74675691 625220646 881806037 206384323 305799417 201510145 829280987 114072075 14768832 400271752 162354380 584499922 145330154 266863028 275144740 443910178 896315603 913077783 399842025 325154078 527636696 632356256 550730967 479453448 476184925 329101759 252245119 443190413 346552223 562911883 623949042 380815261 772435580 875358961 841668261 314087544 200011676 202284887 954399962 818376288 791127689 864611607 5121792 886924808 991540084 525950589 835045330 434115297 823334051 769772327 637208150 480151974 944420992 862926422 715245778 886769756 895285186 75146644 828799768 26979072 756652508 985395145 561963817 350233027 453767048 383996142 330785683 516902119 561701057 389386652 528765722 266390622 453412072 149717657 40278833 66401353 765309797 697617017 680370 321290418 802091348 221437942 643671134 45244723 260781984 371215683 522465402 708263645 648050813 54128374 42629511 380454933 871207377 313186181 681963151 648964571 840959156 821943924 754401884 409635311 222494945 50886845 404074085 760046358 176456069 181542714 350503179 136354713 224337238 950014822 358065962 172815738 651737659 527952702 433431000 32218421 150944463 729393450 78070574 695752935 944373413 138277080 91010786 745403 76633885 367454862 876689213 941037545 416237455 722616756 402021013 930912860 354121923 399121862 206915458 778049577 242151909 860272449 502553002 21731030 294132634 124103902 487832519 229754661 738139045 80508848 682952477 422686748 476975300 238953735 996312032 933447430 808875077 283760672 104586306 217895278 284454525 91615851 790069917 850616832 67453045 759670075 340566559 759324083 648951716 281345556 374488196 875789852 918721161 659074220 9933536 921431258 133665855 595612457 538174966 587437389 735866589 648311034 638142550 976750041 628382336 140802111 607299718 329142951 351413038 698129935 848494340 739857197 529180839 417776955 523910159 580823241 126216293 332348442 865583680 961716093 824587334 69638670 370637087 71558472 641210534 377890055 240662182 495767537 805425003 715303754 641767234 351929838 728486166 837806530 280030694 732339152 275875792 995867834 617829935 621878679 911658034 82237056 353659834 305496955 746408141 421630901 773366058 607788388 292124226 680073104 192585772 865837307 644142750 217008676 638173818 180234451 321897621 538759970 378898295 466781481 105158563 542578594 795109022 313875226 866333540 35350535 561721510 705916385 741370944 774314826 323081840 664481357 527034630 556720173 680407091 241396518 556931222 818610620 885089891 794800038 584436530 209818677 460730285 554887027 998933279 490835690 54831003 416127605 428923636 129448161 428849855 935960889 893589226 580613164 225016081 611087012 706097018 111315151 711259933 693008918 383728372 477725494 382661450 236710569 588098012 964429075 213764452 130911169 303440159 228725981 991315348 449832756 945140738 358461960 17423694 50839191 961822099 305282354 634344738 147458278 911187172 918222879 566426391 201277410 909690410 406353714 325940015 513475872 817005495 952019449 303946099 162059382 706130448 45890290 102999265 218386396 332000428 745874570 20780954 19860000 817936580 167995781 855279562 136923971 578759563 781043567 659647173 954364551 740277391 127137731 988418692 189571025 387875519 547444923 410060958 489877798 145106789 951211147 846006694 983351741 741127565 831106634 860545003 728118631 86741140 802729682 857578937 609569888 931984046 408249867 584884679 202748400 176138635 808033959 238168694 945403134 10530621 180136816 61478176 715052162 210492241 870394838 422831047 307463434 402455199 745363763 696803503 576729024 194169383 779630247 568347119 581788962 116401984 588190129 22705480 46034854 192253206 425458576 261697440 448534981 255167660 291843522 721073719 552323176 13469687 337737490 568439915 975832100 571079620 294605305 552995391 923755805 696181447 678606989 663682881 93256421 977032041 400087085 322299708 223532288 653474847 635548790 741490834 213022826 844035003 963922968 190693782 580416915 66183014 106890980 966711791 463253890 98862233 965748492 470041584 811131235 266320465 752244250 70525485 439847864 60045661 398710833 393492595 875612685 753365914 498111243 457073854 282411899 110941676 895055686 267760835 333766128 412212593 274719562 567815399 352533383 985888292 824736695 67048860 17137721 889320276 529716682 577921396 84195415 82935971 503905607 938755111 706308207 773181764 541924259 732349645 809626346 134691130 725103743 835658279 864187352 124377053 475839408 24766362 603669243 311562232 432856578 768024479 499745483 207413440 385681995 205084722 519289962 188489762 548020621 799727536 116395235 293554225 558420651 599333064 588355798 524914745 190593345 307717257 950288779 633516074 882973993 51947434 800479611 714630738 910670535 186441228 473098558 278741433 76503127 736996066 851032376 356010194 70187392 754357618 367641621 123891680 63763101 101934171 668743893 2928665 890158587 821082479 816259740 252017053 70823126 507867543 169240949 810674292 839996601 478702669 560902419 465517250 588498901 580972785 979587439 494400398 334506635 15348050 906719188 189698711 343768944 878966491 510953260 77969797 177966756 828148454 481773433 206394793 971297478 387386153 314959244 769427557 265990232 481629339 885005092 77265505 54192641 585520275 844251395 541611382 638878164 362496468 250367301 611792616 284867809 411273373 248197955 621589946 542182127 211509831 689080646 84830674 778618188 655384108 785937661 949934309 427757358 106856244 574648424 552658484 796081124 932940233 248841953 626716068 226722835 49216438 226495873 302685150 337216643 888154964 193707604 498829844 615614063 395665934 827445184 275014697 491120957 611748379 422202913 126118289 366498851 902049162 448778725 546260618 967982140 476686253 911733163 651644761 995315632 322483819 17307160 633683614 702819524 194743772 283708260 103584888 803922492 933191941 984569687 29893711 66168252 884417053 120793687 417341223 918266555 674786385 146899420 224056152 144052115 113885560 701071959 146111684 155902019 450155028 550603107 84323756 167913552 149980981 760154931 698610367 763327501 818958619 222716043 748496673 592145368 83684310 637780891 489214513 607455169 155485739 555823812 204463739 345804082 600945332 899506426 660855734 816733002 796669123 817794547 466396976 825785246 962363396 648548257 654367101 51436879 149180336 686538327 405702882 118231695 577518359 883603840 66115475 511902568 649788017 125984492 554504276 543366550 680165261 497844458 571949003 480543011 297808514 145802900 163342088 624258659 42773835 456813940 841610515 633777404 41773513 12710894 937364850 924817350 160934288 20400134 202237603 125841119 945270442 683021265 363549509 548385748 914405773 257095997 552892377 619581680 902564889 877732597 932279586 74686849 163285607 258663502 716946043 339570518 60545375 671041029 931844738 554010470 290381317 50227003 538157650 555423779 728022830 629215665 150051709 990822552 720696703 977272145 246230684 780807020 319432732 345759969 196352476 333417847 586172691 232614992 270700874 111966918 388380522 52534439 244711862 799554915 502589017 580291862 433055542 540077207 897393292 678594131 929852938 105611343 402863878 615860346 193779448 507642921 940341232 578238720 367320719 62328896 18947593 519744804 634217013 667707655 265570960 283048800 819143844 640339857 891945834 444896502 202937925 102528160 579470090 775351960 54047998 707641963 806520373 138589179 344299220 501801858 267666535 855053752 301801571 481697629 347776430 498993482 451573051 69891324 34693359 994725793 778628236 244047496 413371398 191127229 190074593 582564753 367383045 30657816 531605332 325630188 751495190 710360476 683616024 626364345 842736326 683155727 797809912 766460447 630028301 746462818 53354868 384262682 394523899 671400241 315729527 369573381 615567778 380003977 570941259 941214946 577725853 91046265 481871942 814013824 23991109 683063837 316652674 448854617 93829993 344205000 181260552 777554260 121764202 674919458 563105865 454323149 65125051 303308559 377615263 393758035 352518834 952228775 105123853 512423743 978813782 477122163 544282687 392667124 491407390 550355996 97685572 594425962 424521580 388495415 653074435 11928056 19140470 894725778 936313741 377721671 160564478 271230821 314936775 573691940 950326173 745885601 154280930 269428311 782881259 463832514 638813111 209084235 824439867 2232156 952467985 968599645 399443341 718648188 901372847 700296169 736913908 392253109 130489885 766026066 653835532 608269155 818333834 202137719 803955622 407506992 440254204 889401321 462374894 614880879 100213531 164406418 292040505 301867323 811993352 479537281 227453585 101962293 131179295 338464196 216877945 413488732 272241381 524282114 396544254 366537821 68398560 704561693 733772286 446991339 391126011 462358994 492935630 127186305 950063724 116714645 211088019 212873543 201805267 676333125 48090794 468156077 668127293 464044765 747106848 445725520 106870446 217069542 931137144 213983548 698262769 410966697 549642130 610041984 298958031 782972529 671520253 866555887 703733214 70925761 699256603 163060811 546206843 267009994 807957204 686339845 697234463 882897438 806330438 983425789 951842800 356649449 229654368 639865498 728487106 265857556 618339357 9319515 785088283 14207955 172795579 765346397 90195423 941245292 408230415 578859645 899648298 54600491 244500415 852560880 420738580 103517620 495560765 551133255 802049548 734550876 802960662 843247165 944022076 750179803 522921170 238159354 871540646 154185363 282563374 718904869 283612929 869520957 593259998 152165906 207312030 464758909 412585833 555828118 651094864 616009149 420387767 28116619 548376011 199609369 315945371 573680256 158162205 373660911 268530004 806360423 147412241 369413933 328156262 785645332 93031890 184533054 510398089 887136150 187804412 977476936 433910555 63707428 988452198 855089614 229877735 954666638 292237687 419297429 844349838 730434546 26294644 592358244 660557254 152759164 802999296 280223940 943864422 929258062 956163074 785794500 904540916 592064262 334511194 877538952 805234632 939976975 612873640 770480447 7573494 640318856 794877552 645031421 897659885 695286499 463940490 209522512 299960223 720038456 227982683 440593749 826376075 773837453 431885247 344549537 173103716 307955190 744122578 684640092 717518495 725194847 765805339 837270226 94089741 671787119 30308839 759736663 660057779 567814629 292700998 568191847 280170214 949510974 87510468 133790128 770187881 370601880 227788163 735086817 531013945 796292195 547948619 408402812 684583996 626165100 447067170 242928079 640350291 583282842 496387628 178776150 990122182 454088289 453484228 538984377 16485341 245103613 696304949 580030749 891888878 941474603 929565653 488073995 921646445 410819163 343703681 192416373 736653367 213499350 791850851 290824658 127155138 89882651 248194237 383469632 602545939 219552371 164288052 153498729 178884209 166028685 64261310 20346172 265456433 572478867 41524472 132746158 445410872 358639333 941462763 24564282 191271138 111007785 168557692 623595852 308271179 635438615 705149611 854295604 641001186 307942310 161587660 400692978 351966993 385125876 283518584 587963139 96979708 605178360 130535568 902882249 772500414 774045644 625565750 177851927 130030042 201362210 708497732 1031505 35275276 146929276 765725675 76465507 803952770 167660841 63041067 529754077 807543099 186084691 999766517 914531135 914672165 538520190 918825917 491293598 298765075 407810579 725110745 178916064 662137586 789433840 698173533 664785373 116247277 491618965 181971562 337886621 799429115 774098459 808630685 192034251 979357675 182499969 588300501 765772791 294919213 498188866 269347382 195978610 293936006 750185712 840865545 12658217 483182264 450558723 205079512 922583663 924123666 823239139 870508590 810666534 650173187 813292693 239889268 836446084 361263147 687919862 781459465 173459730 262425969 709480741 85318004 717481531 810233236 412172505 79675442 329481708 713760095 333287190 178752297 819222136 185964732 163779041 914965944 210442755 321554639 226715815 752938352 276041507 112193507 675479569 908003161 480535641 392351304 126689293 421658044 445427808 533273184 894900432 388494220 320103769 559748041 252882463 196703971 382647964 250069306 593597321 382904934 278550755 564712554 439910344 934183778 945000917 941475825 470952265 919919803 259309172 626320629 836683685 137638444 905481588 515905640 336034628 730904220 449095766 485516060 394186984 235053266 120823851 146666696 291670761 38768853 424261845 627675668 953950429 403434487 86642743 894213275 616873131 754837573 208115907 638397299 733077003 702785178 641411013 660713770 176708959 348131388 960896718 793252454 566938244 687480016 134232038 667181930 181819456 855143129 228838277 750525782 999526524 963912482 433749607 271173386 339258849 965412629 592115116 39156190 607478605 404908591 691859680 843795292 432849661 361857339 241886268 790942726 278582772 448637969 805380026 577741507 399609168 117585622 937568123 808632243 74632181 646910120 32316873 542156858 20919263 50596266 199419019 875958901 736373201 373468092 171883537 431790291 665246947 28948052 694867306 468307454 925519433 546193355 18814187 907015185 912875130 607892573 280535955 49169256 570873379 979840038 989341754 6147884 47899024 306755674 297231736 677117211 894649441 178483846 977210554 819066437 744215515 457632278 510855974 775629403 652327052 311932811 820705268 103108525 696069304 816180734 898688618 878186438 34909524 102963814 979947515 534494623 804932849 554049986 155689234 594908737 876232009 397789176 201551243 97390418 859501015 836469739 929079765 692399742 777938374 401101553 149511784 536586869 528569648 674488972 143528145 925452602 918982135 884454476 1641926 819135181 769669662 127560612 717487379 908556873 418748262 641748409 618801484 680947159 627452034 341958648 448930609 524877726 524966723 296675536 662081600 974149022 396720836 69095305 489209153 386430347 911720553 702921517 372253336 363390354 361175354 540978979 874782182 641006002 327998613 254018174 608531239 70842059 231323485 734869573 410669260 871001906 313546453 190766806 94948382 839660863 416844277 519267837 754508780 413914713 921446457 965628363 175934154 583002360 63755896 233448970 360024823 917362746 685895562 970863807 67873963 43892398 428336393 760937783 189179934 402625522 979560625 551254422 258855637 202205764 401040195 325568225 177347846 783252655 123636960 300955360 767692246 417967019 393218171 999307746 434059279 89299339 534769782 249859607 843618943 333813546 211580637 514999468 177099384 301441882 119728165 555246575 323933011 139162274 930046994 534295294 578104183 459573657 268917823 313822803 870114853 101995738 543121442 547336001 924868233 817067433 197477437 808813560 411137689 260056973 750384901 908801951 579834099 792219117 424532771 5517448 754505551 400829492 774053283 615737036 371308618 829198011 501576587 182265756 780316975 664167977 166437746 997021468 709962255 96310817 614189596 557715046 839674424 93702265 308543603 991582314 703605860 995925856 740039165 176612859 483016814 289959914 238068519 179500592 820878673 309506947 59217484 733401528 686865099 830824148 775137603 608064939 854831832 600545224 847026796 837392172 186293452 527821636 295950579 484869688 726468294 900959619 444901694 894133721 179194829 678975469 576799174 236219230 298009533 309845062 639398639 290231497 53327537 213552004 675637314 628896361 204967018 494304874 802726955 675994734 907058483 76267537 152637146 935109617 692813178 436069424 824690524 30020550 828107822 813015419 289412725 448107351 687445122 890078992 224456264 327770236 626382597 747247800 810091621 990267436 308826304 552926485 348135296 411701377 662910144 582341296 523620971 648479005 941604238 767782132 686828809 845859076 654226798 803471887 791608593 354828481 487880874 43089249 860826366 651753033 225658955 5311434 763921661 717828772 903679211 514655706 741474800 250951618 594258772 29161255 953427209 480424621 319127323 905253408 153578437 223209058 393288294 258179860 23453535 577364569 922316862 225858888 328537317 564099004 788724624 860517673 983062261 372225046 782074362 477733295 593688404 322960495 321115894 640182550 162685797 132478102 502187905 895539330 886702436 824191469 424862092 398966066 34549930 519163893 965631362 453730448 747608377 281351872 945136735 677937277 890287541 89840691 322288211 946624431 902176110 486271038 532701759 699580037 977428044 848724212 78318586 643611115 144267782 408273036 521449319 514240684 509421264 137063712 333721987 638628000 83786029 103963839 234897873 401222551 660673643 228359702 193685306 692731861 648312192 676204612 703102015 635974269 142225509 639793816 22464035 23388479 633282911 162164836 939852793 966896679 719338526 601432960 211078766 533336061 505573639 24694320 203638804 476860406 925038076 497511384 626360784 945417575 56993287 356377350 399405507 861263457 601469601 99764873 464569177 105282257 798295135 615602302 434205087 181412385 675906477 235263707 525538337 253140996 265770778 896804811 812862545 950806742 898556210 483512999 95407127 306004865 103931339 473875223 849978167 356564975 219587616 918386865 150973725 731120453 399638657 805110526 6650201 356995555 697571354 88635134 447083416 557969147 962488427 137327964 618995742 954240810 507076357 205081313 609292854 857432048 293814584 60998038 585733710 459369368 93995184 435377323 982961608 425075281 883255856 868756888 441516918 614243412 542321552 215284234 981986217 858229284 268212842 162948571 985780874 898972517 644089232 975423058 560261677 765259454 248669782 307247384 327018728 630355661 9631467 661059254 961644372 549214850 870206699 752270465 18111664 625471537 704115550 435427661 221107262 895864397 126369275 250391279 472139731 390563876 166178966 814375779 508701970 549949956 836162480 94385574 858687743 765067917 830219486 791494482 259136326 874518664 827047345 931900281 407761335 626261780 293803541 583120092 164799340 173612453 877707823 199831636 420058093 229379626 330272011 522160714 13283514 403386023 72654789 896150908 863161576 826799216 171233790 633815710 586696765 488466036 209207153 547037305 534387460 732617404 839979091 344500795 916357583 336587040 847953197 557810516 107467796 572689800 922087080 548824550 29465563 374429221 791137825 558149100 408323320 6199192 533672934 115726148 886228592 894609332 523521151 697220170 501817811 691478941 61594165 450960249 294460098 376517347 8428219 156210358 514391820 815925147 756828219 364977430 421725130 732908399 527392415 826297725 697567246 920926548 811000424 190312833 599054992 725541367 768187664 883320920 294887753 448929105 952255989 93723284 280279702 55093183 344421168 568190866 755034141 534505074 938658148 813121825 869879373 373996581 290052436 58178611 195509341 752642886 785571746 411402140 165041384 140004595 140017493 910003766 105768744 726293928 373298118 958651017 666160259 593738901 211624258 40887184 702570690 217822647 376443944 391421181 525461458 552968438 381755008 326093023 586896843 120899767 828614953 116217542 309234434 744526496 457755677 437531924 413850604 701026367 390720273 232547040 496324127 159892989 512973421 781159700 378688142 155754597 789899036 757093917 831675354 983070600 387534743 62018572 862871899 424155986 7165642 927990940 332953620 746672233 767882033 325296131 925892705 747022339 662205648 54599646 888766369 318911393 25459760 43365898 299655764 422161283 195945051 739515272 736461266 840735043 64524487 671644469 737257461 182294556 582796889 464280904 323868973 424573744 308862576 885918982 96395996 306144355 546499222 789618420 836746621 320768747 449842819 604465024 295477193 967585713 516894650 631686323 716428745 928080175 637652327 475954153 150674812 594508712 954017902 60239644 691487842 485216737 415200862 983322269 360531693 543292510 381657525 371119596 103723134 299454702 375815344 148839546 779899849 686348201 405024737 75720476 266208185 502877131 299607787 856573964 821607795 858915437 745666466 810616568 834838314 263112766 148073802 168696799 224624789 585288589 137872364 667581801 891637076 998935970 112969374 255859498 341112619 276106151 60525067 546204326 394816110 836142822 286787257 441029944 508304478 508795877 171159621 982145137 25034444 315410484 843642451 540089755 32829921 912882749 919873866 500990102 623471365 810866665 290855751 800734626 240617675 805888342 158423110 913030702 958733957 456772902 41414493 535268085 509334448 766610662 777131138 306263862 704441785 319916680 135911659 117056281 481676778 417431251 769655038 801530573 192536527 188579921 75402119 815399282 360102488 65569631 41842429 631915365 189277995 758382106 842771106 312759868 926981563 103560781 987415362 310242982 219476465 212480201 440930010 860946196 84960142 412770053 942960537 229050873 240546823 308080047 877480313 357247879 160014683 874294731 810287196 237419167 845155640 718402253 103154244 774984236 173240228 271396775 6773420 850507429 812758273 987595472 843942031 709386598 954051333 290336112 731331206 993918900 27954723 411027377 197848880 438048382 862211101 598506488 925625870 177108047 16903785 704882486 657920365 248597664 871501988 886212780 461674809 450466397 323710465 207632638 909020616 418028838 990901355 937246842 302928473 77433550 94964060 589727905 80412535 487257304 494931460 535417058 332841939 953918480 532133126 265946272 963155307 469437256 856883441 866549940 202862139 426903445 138782312 551577898 63826259 840578366 129608573 144166373 319722677 698571733 495036768 356358693 973809783 681197928 637300164 477306475 697768330 177290388 371007459 150061318 985468762 664469000 737298060 923253394 414607473 231046780 528566810 462477343 590581850 909017906 490073265 414478206 844614740 192829377 718493056 71768724 202131796 279399273 618482983 100338359 620341173 988121681 449247279 84990965 834599048 818738778 242779497 603938470 32092784 388654764 215826339 287899071 707765241 59061476 327966067 230888756 254669819 482076272 828739052 441454558 838243571 20873990 108568370 579505195 916687444 895444289 294528560 183366262 485424100 38071330 154513794 353344877 194098011 131258485 838773183 254756181 210323562 654976532 628771034 66486511 698843424 884436319 767088817 636048916 710063456 214290899 1565797 137657171 727504120 882602417 414902273 347022404 214497793 621154622 177200292 764898923 739017959 750342331 720444123 826748339 654780601 885009536 36757936 815648697 403924642 813114060 599373986 402066707 504393304 83202538 312788764 765715840 533364730 810693072 500045662 216768510 524501146 502549857 792978231 726452972 101541587 988209902 27055480 663093104 305943080 873285950 564415056 212151729 351425472 763344657 599869896 58234342 26161687 730591138 603387515 340889355 114251044 227722892 286859275 172483751 732347956 184616327 966355115 688187814 936554712 314738786 136004527 550378624 302286510 673488872 174786159 498682332 544278977 61321988 724908180 646024173 403934589 861036415 580872900 418233018 457693136 790817601 406498419 658795283 390590557 952234070 451356268 616534103 345109620 366266950 754914391 901372277 407560980 391893463 38278404 501171632 147178907 608685956 951423583 568709492 605265486 50450708 377992390 446181065 310714520 788085906 351613318 393674739 542525242 32133508 773728784 748279077 52600812 388261229 24144447 288147316 227224178 894983046 551343111 761476916 836512847 314575360 640234536 229512521 728359068 138312670 733509555 588209625 960969411 291865317 734576790 4143104 122750368 612774816 283640762 179551788 782897743 960190097 442625450 430859398 629400083 451669599 553063423 59232656 149858923 614493260 647639432 416918597 197461827 74164019 911366112 607322777 523649270 458689085 256431398 340846288 889300432 692350886 946106333 626453243 940237918 278296436 805377595 77539086 957569985 280021532 584192557 728776991 114910652 950123111 412562204 298943120 419240624 916278915 486529177 869109319 598385083 605795257 954923643 777115545 44255000 995493392 127267698 398160739 227028995 458553428 778041954 824941191 268653605 213680446 147184595 606919779 676274423 602490645 224440659 385298490 865339068 411455793 588625541 868583753 232001101 491808142 637056885 544317655 247569305 574238132 405190482 742839566 237730867 782948843 979780750 264775800 678599810 379151630 236806502 84000300 516754325 604244372 606397267 426430496 707881074 412957090 938092754 377926206 140185141 14142884 372684880 77748060 335731887 86907728 624394689 762967026 350687669 180884459 370953066 813498049 994931968 898449626 566036633 91006345 308467289 339752233 335857272 472662447 391267484 585260171 362422248 783899696 78106598 781518829 7521599 10997375 581472128 498983687 630854633 459077888 684850073 934977492 645036487 562607910 554477347 365209839 678471865 238945344 543208122 154086915 236715912 969624380 408074245 370254116 150289338 750478660 457377176 655746133 63188796 294036115 360051419 504930110 125927120 883134124 156596371 961618062 398112554 109637396 978541893 168970505 842968063 122372419 817128445 787590624 598166638 663187000 920717594 660791823 526617203 374843321 613392140 55239760 951081879 571499577 329209880 599503469 47993657 761255521 409792517 619472614 368711650 166572755 635397101 608658576 359224350 459245347 688148059 442035460 317275630 654024661 474786301 74172972 874711109 594795938 241866075 561369475 320959561 565694410 63083337 785086818 388897660 563187483 495083758 405884388 798521667 364486051 818713244 837166168 791844856 79253543 941179107 406209347 584637655 479601270 685422909 984636963 387217826 51333565 332336897 340288703 777813610 414494038 785736328 380779040 651424699 864053540 182910559 725775103 805040604 125680782 654998876 879823268 371502820 410727246 204173235 771027012 174003856 682337665 173796961 508591963 240254700 166982478 81174958 546341435 705840636 362370258 126571304 600219107 848311288 671574637 353240169 40322491 655276363 154755297 310647307 504750241 616553560 46215592 293989792 485246896 416026333 823841957 601221886 249758291 258815761 863745584 443190342 899920830 58438861 791651845 809374586 374081653 651721471 170149288 888123381 255304920 696726822 758530107 911636072 774775417 615235345 966153025 516136916 415722415 369689289 268483078 783992979 765420270 363167141 686037022 279279348 786433464 526140785 176730260 342186131 344311132 488854338 635511479 52360687 328358523 981301414 312640513 506899072 634808600 65284565 740934195 725777071 516338156 658453188 68384685 72270572 876813389 879298002 667243516 366810297 268747300 704114150 50629863 831877995 28996083 641779938 217579082 622295145 80545106 269571419 654085291 312629534 543038373 780435380 955511237 113675430 402593786 138278029 105427302 823052137 405370262 211690062 925487291 678581155 167727349 876131452 551707795 650434151 343021571 616808300 95982435 162270028 502694952 361754164 748241936 877734844 317155091 868922863 888656257 274525520 745951659 797661888 803824722 496535104 62989896 112981079 368652646 62521982 883303258 433012730 546709024 294344631 650226962 696118618 915781885 108647081 24212197 32995650 270956167 630327540 920500310 720396895 731518348 67731181 503965138 576358730 330241199 226661889 710651097 181587594 26582476 239132216 981696287 385407851 181937125 187115416 812777268 179180579 124100268 429199793 607592220 223559175 803143992 331109602 436117469 544959747 889217402 132050140 250716196 635717062 415866438 539605421 607045502 449865222 940011543 651729780 550208511 255368151 549029923 557921978 748414151 831860860 258363742 949784826 516893060 19337065 542807308 798895192 756064729 998800546 922203700 959372065 892441714 980468357 319171326 694468035 78796354 378899638 907221537 707597803 326088302 298771750 514904416 624428864 10963541 218197923 227719233 825344384 520508116 415940935 956180678 978325189 628333258 220858039 899041695 427439893 310386541 901717271 429292082 579479555 133998544 392753780 319410945 951622608 18328142 71493394 110244143 552693618 24328971 348757081 187589924 150615967 997334733 782020716 518046438 400935830 44068581 807393812 325158579 825467879 494206146 412682380 688983023 907892706 348495761 710864178 850108980 587275438 346200561 400308492 195829855 446680461 995279674 763391579 76651323 980039055 970344266 245627694 733623641 762858037 692668397 106847982 962180292 26822663 685484876 984096501 565014411 23525151 866719805 930769930 891670919 954653329 148335372 296650647 912147819 260773945 523633171 694108783 33580096 647207314 550921165 935905456 304345524 141851423 807589065 183040246 246638245 403623378 754457946 689570107 535960795 849731262 910720705 146077598 165992905 458580545 752378765 188549513 285778130 5774132 615092769 281884626 526237976 583444042 993609548 353689498 719692775 473287531 507656258 710147796 204891330 575705209 293273469 513530450 946418480 191423287 719545003 825894805 831943445 496959045 913142851 365244778 675492957 485010902 903383392 600320225 302501036 945321082 583921733 695394818 418651409 327662826 265093508 738341732 205795232 273407152 421491659 742424645 939139890 370305047 101689347 604919495 261448958 438562910 968574292 831637226 689749366 487328592 66536259 445456868 472309028 467806124 530811930 450608711 106774052 671066862 918158931 642165542 588376542 937108678 340831379 182315966 575997797 402910549 152581062 650864079 48524563 494789304 980779445 257202500 146469318 134089129 496742513 602413098 546059546 414343090 221499072 610610445 393785167 827177068 25141736 439993912 375154726 369262736 14760519 264765279 29423825 635000883 444727067 888904073 655051828 51916254 92457597 348403742 917275121 823691276 894687435 943575274 892069286 34395121 512690480 361910872 267713027 222370954 334289824 286913398 576325045 679416910 488862871 627178479 19135332 543580099 827049768 831666892 221605007 362699705 75865189 687541069 923136735 916625364 275266735 820129534 748736322 378442318 932763010 51404516 964817525 119339296 343698756 915164320 672783849 304930911 391691786 78610190 138802650 835688780 971717867 40899821 329213340 804146460 982240425 638065614 726819150 963780364 747794534 714018421 848410665 646996232 430171236 137889934 703415301 316575811 685027862 13501925 995683779 610764678 755058153 438539019 347801380 504572296 329656567 673432444 537805539 901158549 597007555 401603448 566901751 443524256 103572243 302031629 2237606 502450158 542146434 911289941 253502383 599180520 820642155 701679433 372994721 92099576 591910620 888662638 930883495 256968443 92528616 334799054 726843725 997428460 991810511 49044739 602156733 995125388 607054365 665688706 533195553 333399316 565139350 124003116 884762932 64827689 983952113 329556523 56395607 158361230 401039911 102109266 174641433 586467298 471943050 964030462 772366699 92199254 854547521 881334952 471528226 878667337 621038765 654376937 212827631 107756977 120996605 584034594 905790502 480937885 419484147 946752557 544134263 718506418 105729456 697198917 551158467 491636385 511943767 708363277 470758273 680533664 573924545 392826593 736569013 881953214 908370779 683827561 417811093 835619953 59225040 869274550 279057597 137164646 846760893 680304392 951456969 523810689 782157125 379279805 854640205 714088227 453721261 955819565 599793953 1050545 866821229 551774873 190041744 942527832 919757221 184338010 325185096 322704849 80564562 218814267 144021335 940596519 590309850 616181380 465548709 357719388 300563569 406683277 887085854 217740043 350116680 986822760 18967853 149802326 628482553 325456314 129700805 837940105 189570991 98999472 254101894 653461177 537279305 581453803 989808803 127586701 591562307 363039015 759401397 43049536 394577700 495590088 38760232 575558871 645827367 552165328 369944703 370533266 875952108 698282371 785695350 881549499 144090599 584039782 501653535 285769930 889367132 461110120 289889796 400844646 862779159 945019933 87624365 489986655 617544418 725840989 565337065 989149109 314606415 748850819 188450551 63294929 772606460 539518379 921269282 482823523 754829816 622861833 404319544 345041837 864122737 644204698 98487550 862507812 966603228 722983642 866503381 250371070 995353416 822543637 660943850 430987833 650191763 547138297 14806217 201320200 348817216 685367813 354646005 298845435 590181762 2848644 235469462 242915783 744972959 161669571 496625683 659510319 763232087 522097694 432296982 564070051 567437640 3200152 406154754 6839583 527695341 939023113 134051761 925795144 119466122 623114470 719863706 345028653 188213750 129062885 586675902 781140308 228030748 862351971 685477664 39319770 943367867 422130505 358439523 55991046 724202058 490227489 184579447 119617893 724792132 957949891 497007473 445919470 862608413 451827719 80833197 758502417 959191044 838707841 746332701 982445409 173864650 578492114 916689360 980633902 68631539 416051913 175460249 469716926 782939338 264427924 991635383 751318907 219434190 492249961 162689490 222249710 306741434 554756540 504572065 734131759 9544731 75297305 344884269 762623723 993777380 349695419 854096905 221596578 107154940 629758264 855246655 229455259 302133551 636830313 395579038 264207183 503239424 544173163 831138579 93075520 294300694 790936186 346071394 880444235 859580239 750238991 698714326 667028350 369700431 897429970 214211772 780389338 249928160 450690871 958014139 203226771 470171467 399727100 864508280 963300398 419507325 716801494 379105558 288685463 469387590 518699945 324380214 160541976 192785209 983460301 776909543 40341633 798564892 452583549 808608936 172458744 166926875 970928677 536974197 42993525 515489731 850282544 676300092 688256850 425769438 697968262 408263849 493135788 902188917 715723783 422592627 16576584 130821378 673875644 494625772 675462931 859399415 763958050 58329267 177837075 736002623 273483354 711510829 677322334 377645391 423452147 136924907 396461519 988445593 208048372 321243726 869746902 228889353 848330763 141107431 842427788 964696992 645637117 250108131 472178390 78935746 928017267 186707293 611303373 241329708 26871715 754585678 389522776 344540960 860140568 783916411 405403591 395289980 229341175 21128153 657628283 380080263 135816188 262068596 991582547 212711918 205589890 687018641 925752383 464617923 578861378 477444535 63014600 606489800 963256327 816019873 292731232 159452120 579420228 916154491 195826765 191712786 631060860 237960046 524507754 317262499 281537610 973394100 963599532 899210414 633720673 222638927 333659099 366054508 909521656 550524404 496455407 86536501 835445914 865822310 919168394 314522802 330376738 418776092 914979511 495539581 61108447 988721502 588226175 868126869 6131948 286926917 636626733 977706034 137660928 527618693 680008023 112152349 871554898 794773358 711350488 761531057 342115952 434551646 803781694 190054674 241272839 420202324 724191093 876158561 369613393 128386336 432921764 932191585 206905441 453405534 520629918 557969118 285815592 538746332 949610486 868986951 627451786 468497443 334272926 484853952 629101378 216457091 269238936 88402775 575744135 865291987 341974026 317341273 915572628 342405607 172403127 755211006 975761829 390200932 211629603 44770151 142511465 229134625 698302883 836287398 153978456 321777816 68157331 172150452 45217451 2302721 632239560 331270434 897736110 134862418 990003844 649879009 141698421 214692604 163279787 942207155 368413624 900996428 226626356 785376930 284725317 53832025 379971330 563855873 334963446 316978636 193041529 501284342 997982599 586801221 357583305 201549082 354145893 523400804 808205719 271626774 188834566 864131105 926984379 403620254 883292829 207923298 705546250 529514038 210715168 314636243 756042012 645418472 955512583 785983654 495547846 47494784 142414535 42493 372103926 24323157 241006465 931426249 730379181 764768024 6606435 103067519 662542670 201891026 319247004 283021835 572057671 534977215 304573938 654475852 270434855 427803712 61416074 352241563 982282479 220117592 168888650 376506978 974562670 137957017 93867148 672309785 681997542 959743640 39495169 892704098 60888031 443939359 939456796 791022138 201167336 329262877 559180512 723189334 167440832 332099573 188783687 999224297 611470504 333263420 124679993 382361605 247693459 885247851 68186545 554557373 64638975 28734353 632474355 142637340 26591680 122144491 27477540 265519526 568557355 796788773 445629763 202676681 186681044 707004540 579838388 65355841 428219659 876585414 693355193 957162644 588806794 489202943 324875584 630861616 433444930 3093265 697745411 975742406 489724266 993238906 710417512 151722107 990445377 437424388 451084841 433915317 476090428 540328217 484326073 338053837 946387126 241478274 51176293 262892031 284516859 555604680 583697662 21489267 806557699 644699830 105637226 733534179 357053709 10425139 664737256 13372511 783988541 423018727 440613275 514650654 29116476 323981909 481674993 869559770 708359769 364378921 846141923 584965169 832861892 570224900 339584120 742280937 369353448 412563670 880865121 786480471 831991187 488131409 106976026 501699640 414384794 408900812 286138468 130798003 524473182 943595408 953186767 652616582 399890773 792789511 861523876 572933101 831646479 465557415 459962963 800420786 85651291 510537066 643623225 711280774 938273993 78627434 147306102 197552395 53643690 313474856 920805577 447384079 735382960 37823410 325029719 21640398 929820632 52040494 704759012 669637306 571431250 728554173 732639578 336170417 514398274 692808722 120235324 127111207 182949505 885374736 458681570 399300083 494844585 169026698 343463124 601763572 960995172 469548911 587357294 536118276 646797234 79834506 587177194 864291115 173033688 925599291 2675760 272909283 298775188 988760274 162144725 305382906 580802899 750301438 340905895 852483616 545093592 244402686 216399051 461987674 233477814 504861963 896207002 356543916 766087679 873525565 100688958 731722794 685731812 384633648 998525389 83836543 823626368 319282467 207861813 407003611 901156908 515370043 517622552 112728387 995639797 794253049 206910679 502080432 213016162 561418143 896137565 532206543 501958104 893972665 721844911 384855149 844438464 808886274 420013054 297077061 82846495 681993344 747998458 871582665 358846331 620697626 828853285 693993957 858900086 191379046 535645697 330238174 820101496 673176574 941826426 719337077 936973398 349262023 315371662 54831888 353988954 468649596 6548644 582106246 494017752 273722328 592529132 736266419 743347231 924010875 22100834 636135118 11166603 619785397 276714047 429731372 59889665 474856830 980467800 673638094 412071450 475413874 168480028 20110935 407921039 814167854 505540913 744918388 846115623 869418753 468267692 941045993 990243416 470376050 390894130 823011181 626334741 983338378 208202355 298028565 649461420 209668886 766489033 413167614 366856246 740545017 881729193 746339166 313593987 108209713 455058693 872975111 922123843 440300642 281279598 24632896 417389498 500217831 633077104 242565224 938056215 111468785 786418223 733561995 173905572 405347917 506569194 838537968 789349086 643487968 879716759 984875109 462075287 113314801 538501913 660894192 298347457 368225342 915869070 527427791 3546791 360400464 319015868 403179934 478465860 858081089 407384233 952917794 446492341 855260004 627297362 816569757 612910665 147087151 99092276 739259452 170868777 218684663 209579228 113740329 724694011 514878953 408887385 988083288 223346024 613709581 862941983 64255302 174546063 228542075 980288475 326143350 908375302 173189956 494069821 326645226 265150762 998111679 100373210 584421336 905378604 606534679 488787600 308607503 12122419 356331097 625745586 503820957 472004973 222503544 31438777 569743362 972804144 989523873 311956555 385176299 744634281 396119822 357818710 379472384 928575664 604357257 586883278 344774473 122329542 725793395 181367752 786760743 309373388 234626946 278052921 609286645 395932627 93468482 172130070 828321811 326481968 169726764 128088711 662426058 673024301 140101876 243991959 354193425 867743995 391362122 800473585 305776403 78394750 502260306 327926429 869923180 374117614 175778619 24967356 926908990 372778992 559493064 304798694 188535366 907169704 215902190 844418540 841422719 35426321 98903005 565669780 154132581 81305490 633089939 720639451 281661059 146887775 921605931 135324722 231902120 613818477 982287741 940770342 385998623 911316629 350817921 726989822 163984081 987387697 323560153 276900413 958243320 710482390 650175670 493065990 905785718 356801365 240255693 38777349 441170094 371035446 858147009 624875870 455661624 750240697 399335555 774459560 61453787 745660527 669691309 393814315 794232884 286675292 723462832 525530146 603518927 194875309 446532932 404932876 681044548 366901432 551285795 38097805 259655253 775220875 411113567 540797837 810829562 866456716 801766732 177081736 532771749 624542345 798975999 68351562 389332870 14297518 433140602 118856840 29229559 439619472 333963495 59482417 363180746 390487945 766335046 408758910 170458638 326201335 551241938 919905369 533413703 113359894 712689628 603817945 365426883 272295332 204182277 322323665 521215559 130757685 625991786 447477163 811200247 247343035 862665803 982226211 560906200 931561880 353330973 454520824 476961123 681778008 946805879 156608021 282774354 497135109 473751819 49652095 678375974 955423307 565755128 666221942 565252940 159191713 201489391 2670626 794474234 289561854 479803382 919009587 787488196 485576567 406229320 698721274 534683815 92512889 448965016 357547666 70447733 345525989 45634481 584500650 982674136 112793301 964785087 682026711 402995968 942820853 239736961 557598999 242519032 199307713 343232066 61384273 499584126 432314488 467898663 962848020 600930775 931039938 539513406 953962661 398603923 479876718 340513590 949656455 249721362 396785123 837687133 790189412 904874522 679657147 406386247 609689229 728729384 703272867 934087393 805736971 599599821 78735092 311122452 57289609 469845678 220873768 586460803 415799255 315369333 142364985 7710909 713035589 328166565 647361802 954022404 541739851 132941940 966535547 221280101 966329640 651608687 869700724 36357329 256247387 267404853 717080559 12147610 514758478 808314233 719780382 774999523 74040074 125211740 437763948 748811610 191679241 410613403 415943653 190382436 792877455 956796199 781346417 86005599 627590481 307223814 493704812 944957321 494837161 277461200 529719112 212703728 156446513 687029359 153721581 678275859 145784563 100239698 630625140 10193013 496028039 830532538 115189045 795720281 126753977 649746884 641826806 652000986 144350581 128413962 618254596 789357216 984382963 835707524 833791975 993982871 551454791 115027702 876731047 610792457 716844197 837583959 786669319 540356470 371415472 794317921 654467851 654879688 637591032 559633953 690209585 8467363 3420807 56530754 884018651 638789337 58082164 49222606 474393645 978313086 739775412 877413315 110065728 871832900 211192461 862794699 96662151 563507576 436579231 729898644 549601879 876346967 271628145 864666865 238325341 460925380 81770043 572775581 297985269 103305270 207278061 100068141 733199885 975636781 64963062 80927419 199186807 376258813 209752907 703971117 938858122 880094852 314418513 51642740 307897432 226335299 634576230 18111411 855734324 34153152 981401007 727141196 473511924 856143366 425108036 928214065 973420502 13701306 478643293 147005847 360952250 542551669 131171126 996250388 437344127 201331048 936457318 226723910 859746421 153861592 921029447 874477363 279914353 559051053 412256062 816819285 721649813 87894868 228934790 668174468 159806763 203797432 547377142 715084518 961124948 217149228 401411684 764553319 435569582 976264155 471580551 760316307 519148411 514404033 147330760 641424765 173999812 448211895 851957970 242443827 551217824 220401444 364317651 742873343 110164043 731319195 217568671 155033030 802953794 224516770 356105881 822333099 74568059 475991494 707521624 952627102 572097957 400461513 144395490 941038284 156175666 545511253 32063859 607287448 634542343 660487761 685575871 483534614 23457436 985487661 729529374 390970998 359103785 285750732 832757027 445721579 755362630 521406911 741987828 852033595 69857680 168364642 50227547 513808169 624396347 722435201 234259914 638435666 824638197 125271702 3332298 662314891 256778705 948555482 621852894 303535097 732050775 39803473 721777672 388353652 569800512 417775232 426146448 651239027 230946373 923251064 285823754 568086119 53818952 828012309 379706241 559308841 705381291 285293077 703615755 507925263 814086379 824910723 622237195 31092439 685769962 596372577 877418291 821676948 528230196 937230204 437047235 455042791 151698746 107596972 562586530 388603839 922018771 910814619 902439243 956843504 603564988 586898943 844862170 451971469 623113785 987430797 79182877 310576658 656978306 579814014 898921201 766114321 53486618 604061522 910954978 863967698 701144207 684615236 795339060 340224116 869100126 889223746 297014401 663533512 739520723 65276497 870807754 353480645 961090545 448478371 569955195 421646722 711438167 163416109 80291837 483838578 392611213 632731806 137407613 352583003 715312761 824410480 486303989 867353888 224784314 647373146 835506174 566004040 89880332 883685985 500742849 394462004 529389829 922206530 830272047 495901049 609894215 843709618 761872522 182305550 712580588 262263048 566021234 214103829 549428135 501477660 315479551 592630887 372633754 233071812 148299910 799968634 643758643 66961151 66131890 594034462 980700060 917731216 155649855 174321918 469875583 784825071 588951888 792859879 445281477 629603373 379030354 754435883 994342709 269772295 685776402 307579836 860986587 914390452 910529411 527358491 26621058 727407633 287612739 262856887 315174465 415885078 609173587 438922359 498975315 166305131 205608265 395998164 396029321 633375942 634982560 265721191 312248326 495682463 357333764 528347335 891403253 665725916 142747366 165223400 987715969 448341879 368858224 192761059 121397298 694180047 715396 505139077 591483092 689943020 654383638 949312703 597995459 969207224 782283319 372396324 688735850 40582461 807066823 842718480 310005713 890503333 470424665 603118081 92818240 413383831 804692064 224143020 231998837 910442633 91032511 734830137 325791906 711528387 304765210 250640867 864171947 718051387 224289508 422376758 9888897 48406435 596571435 931554939 654840468 988715779 341097084 512457441 498016633 515779971 512144151 599052002 237604668 246157010 163010475 218998601 973771601 740250298 319767518 467782983 104403838 374668654 526606814 42717719 577388092 623285935 74234106 465665689 576360729 130548381 605835964 349796376 763870604 673391851 603600656 872973609 941215437 792696884 412961427 816877442 896898894 769860708 574152523 596264537 49562794 8600315 506554025 411133158 344497981 891056260 185058624 75131247 96445408 671823714 168706410 962133538 579842531 817548050 741097601 143241379 395800343 620424894 271049542 643955147 405373962 251081037 986264524 521476009 586129522 5918533 172538557 90999159 502614186 22617301 324428127 56492645 412145177 202183248 122384392 293675131 695722775 756157206 357293201 995455617 219206197 294432694 895960136 602103059 250658551 706856806 108697464 181462494 310071210 551661230 623671786 327424938 205888274 879848297 983051735 690343434 574052436 402874084 194097831 117036834 570708302 71920591 524832552 847860090 783724912 245716187 179051396 194241308 190258293 632424612 440663347 697718447 725925023 141667196 599149530 549621757 483331432 796972847 688246487 628547347 746541936 538988472 312832299 87667907 60544878 954935966 754652672 27127160 607760880 508254345 460828485 13905926 514318560 947669880 785784853 95358752 805963979 363077759 485251795 244321409 528394502 816380632 25671332 774964268 932422119 243309579 931291112 205250241 61140248 305027859 84990239 700262233 999335073 73323224 400031772 626733134 190006400 542586360 357394308 588900122 809946691 870995881 930183487 429470351 948378310 152298604 604955770 456955625 630581922 81911493 355222465 627447249 513734519 239485398 752300859 574786463 175633907 771482411 246820061 86911017 527125017 405533436 986680129 358899469 747440365 170065985 976345238 104612248 941319461 947010550 11927017 355257617 479543360 114403022 581827380 581409236 315331943 616398594 941175240 556382868 144878217 129321198 660324387 144190668 110342485 212598066 104068559 14728277 83841307 492138647 171925024 471075078 999573583 125254422 316362467 543237492 627805633 388185213 882497804 829579175 397682186 578052312 801925266 870409127 940000847 473589336 989534684 713174011 232195926 763716829 913725315 72184718 961496634 652264703 396483350 422427092 603600443 757732636 313330002 959448585 400201959 941756532 257142251 368545373 375880001 501696296 924832701 704401498 960916950 828928433 191332463 533280147 199470335 330248049 301185978 529611467 798709266 849813832 248785827 91804934 213056415 741582654 134649862 354336854 235768671 250522646 493925055 527122827 43583349 535499670 70500568 595847750 637998862 870462228 512381628 270208172 476282388 609306211 285410681 546688734 616599371 360747956 577807066 425969515 615130035 780207651 259196817 528305876 329193966 220544821 786357790 448463515 230560641 259464035 853973276 548142023 879903233 753518273 680415510 397787819 691299065 294640637 464506888 639349637 397417305 205115998 374087931 234238372 560253223 625840683 502980776 363854535 904854935 33732880 826097502 245504966 894183564 913343027 178381217 727230324 840574031 931013540 125816904 926251862 788700856 908642212 486148242 97873996 277588281 743268115 869227046 842967153 723271483 394886880 148723572 232041620 954433967 712439869 215206256 510523942 899100420 859229275 116879748 530221398 841064100 242124878 859865175 757834633 342371368 484213024 156219602 654322281 185066606 265819570 656736263 124615926 130657098 271816033 298441402 847855636 869131535 293173224 378428202 232211863 777432870 6608087 711831654 201464448 490779386 576469537 124750890 787171650 932392323 354779672 551888976 297362637 565208369 923920160 807643756 826631326 182283874 618601510 127511888 694214679 673638786 743067519 722988803 706933678 768667395 936108264 824824990 612304117 542676459 16883031 475149818 614310701 323877925 940263333 351935887 8430499 111451964 198862037 982101220 339846174 977689522 540741341 196225598 447420046 579020459 403010502 254669504 909553328 902119662 503930107 533142047 85133558 738162512 288576562 148877004 356952312 776212494 570378822 339865708 339141629 352926937 778682091 774606066 932041395 122373080 974871680 230089770 659566501 905793110 478318603 878296246 739229888 847559503 305415676 767172694 780327899 284385007 964127041 103103730 271768699 986645074 907121913 846432570 509427629 18364217 208933031 131444579 20975450 616891725 637670441 48580099 776024957 734264432 659876854 631341059 599437024 721532754 583130425 276270503 523082804 564572836 415745185 464832526 817085627 195681036 200846680 820162459 737288132 724718633 507449642 924056951 124981542 234416626 621553807 374174997 696131829 576847037 132908963 220742783 13727586 6812999 855061673 203823136 401112656 85189151 410535526 486570418 495873750 522132268 884515000 799812436 461197387 302413415 353481796 476771425 729133052 612239738 102035142 41326471 883809230 58353618 800682784 194097583 621924429 189061619 578660405 454966609 426331032 127177848 504346240 199481914 272879108 911449535 421574426 767616133 392930801 648047707 32031541 238639321 153984383 783742443 447031593 807589747 352131988 49559578 884828537 479788711 583087037 160051204 700496671 647142133 969479289 904003932 778451901 938413920 762848270 728725032 881947123 809723591 327272284 208046458 305715267 622543073 549153434 206850980 381752505 738402290 363443598 61008028 805257627 658188257 81835388 323304179 215900687 60765395 965374408 275662912 854167372 454063230 213444039 246608356 425111898 553749048 574561680 226231765 484967828 399220744 752908074 650813824 697932747 345049823 904224528 182178116 59316218 24665811 57770838 996885192 931985187 440512867 761678486 564395501 760677888 452028893 994327361 419905344 947481 622330316 864205410 391988808 495617218 278545374 574020585 994853486 648661201 843229063 324936359 771408871 303828225 525079615 573276537 862481327 394593826 935327665 168152447 206358943 170000860 484739651 132734665 708451199 457676116 348516320 977156475 399288901 740142010 20856827 832367091 646603078 27318257 363969613 277078533 731063813 54014363 808054326 324596580 188848675 914492649 997191964 174205289 512363415 480928045 657025147 303313016 299795458 64243127 954363436 584566383 366340570 105066845 696922622 123490798 795627935 971823905 388857862 963307075 982589984 446906979 253971834 808892592 268103218 566244387 631538933 484691781 573496703 427577803 985031962 695430532 76661114 144229607 367642218 36948545 519617309 30088788 132167138 85230355 375064323 233506442 728721807 706343302 338692861 143476345 165298439 711229830 693103323 267320271 624126371 193647954 696607187 658475501 978470790 458082761 40778093 527960607 375305367 219788584 873880557 61632638 317504041 830662052 599705375 548232704 919161995 335102816 805724361 82629506 903211289 88572350 8951056 454554590 176468813 740463818 260622672 173169512 816720108 561876668 446879176 509790720 689217523 121315427 571185234 198426577 356734570 810773289 153139888 125909888 934552122 442142554 587110800 670432900 891332191 426250402 30020120 183922210 110807260 387360459 290522640 966727300 880039186 627220268 964234405 630045537 581140055 616973907 964930460 890487402 528197653 923996505 343548986 667671112 158155544 935135356 61966309 677588633 370585606 197231637 814522512 277102778 219058150 61482351 388341546 101313542 599504688 327260313 91637310 983223172 505576788 543867358 199945894 843434891 701316238 167613937 56687420 225131110 831308889 341950874 938229079 655864423 578190756 243428971 124758550 428217725 506649378 384262791 701042438 517174461 714739939 128174636 316195579 410884838 103081075 936180011 563993413 690583569 990999176 648642555 650660443 457215837 81387158 685725527 610287495 675943350 825075735 954830223 822493885 846547385 320184567 430063276 322529605 416552316 898174171 25235015 53612748 725159094 632084377 168108598 662615896 915200610 290988456 512022536 611788345 198183379 324155258 749433823 221011500 880663546 96424192 499154550 531667640 311782317 103453255 235968591 381496389 216991231 703459763 240252314 945293478 338746385 447529153 728965006 218390500 814674178 432752172 508795665 726676332 61772776 565243051 112718685 157854646 641930223 919056718 495999536 933552052 429006680 970728454 409832618 578071093 687672009 879189778 688624407 962779100 174700309 370078262 231556415 637672295 559061555 144702230 164811777 237220748 733173069 93420805 929629004 780730057 209724612 830054813 525562646 132574317 387746818 653734984 283426265 539067206 74772899 676783843 198556766 911647941 235332593 143189819 977318110 410279707 440398034 286033152 43500836 402399464 812060225 418377851 766865111 668312363 961184542 17449072 121526070 688166765 297469021 107561435 93832729 291022134 53502047 29785593 435289458 440901005 851927749 888994719 186473796 635232065 374202878 511201063 266641880 448911841 173246920 530037385 443115373 792323291 814944917 871478044 993424175 291769147 904540415 266093774 229038749 97925446 195595185 969981648 671289153 506649453 853458050 286635196 263870904 91792732 837813791 861952041 363408531 633191138 551064593 804862267 442496750 368056687 530406996 119079335 745435775 340573420 250708762 374423173 209048607 746287535 393225485 231437327 543373194 993878 623934912 823060085 426866708 557059537 758932049 864646439 585573871 688481871 201926818 682870819 127507786 261506481 940708282 623724657 638483946 544038470 258191008 194846878 539901175 609363806 606501323 521098006 877635644 656079734 908240754 588388126 187617540 18515346 352094910 793288348 555290889 96775976 185484424 764163230 984780430 560684250 489021338 841435772 992454230 256033296 561248813 878012945 343660235 25919373 961731367 169560171 638720124 991462279 830864601 599366816 444412845 418002188 569581827 893254176 570955481 96107509 117457890 816525061 258920771 333848670 728174466 440747413 246949739 354827705 881887887 383213693 553288221 947043309 494204024 805946459 847508606 440071027 647604297 444376342 191153779 633415927 793624308 98622331 327235694 788791521 518939857 726683582 319747332 265832890 470432592 887652675 100148461 654718302 523706779 837942618 733318501 770542511 566332708 747458237 311294649 93427588 953826963 776818308 6771417 579421336 410037139 125978175 714307570 970887158 205949355 399540810 804171122 253937725 652388042 891054622 43330769 797421754 102164726 573125558 202100794 945947715 17073260 142960732 108251802 179428895 1394043 800018779 329838123 585819904 592984310 303333087 646390760 716957056 81630703 718318757 405544968 469163450 293349292 51555937 748876660 919427840 255292044 206771782 945961587 406510690 568620298 735731514 956736941 714694849 44165738 887092133 637996046 143995278 404382024 363603560 293070499 972974229 674194620 760743683 563109239 282471444 314905038 102872670 830886114 66243505 558771927 829526133 841496201 978371810 883363481 664914371 962463200 442280778 873351703 521430791 778664812 840699624 971960415 11857362 426185605 124730103 294022456 55795869 25179813 370497584 572755692 193451521 250721158 936674162 834620036 7183001 950403258 186995206 82359211 731645094 758438314 613121491 627556761 996123869 295115508 475526389 32938950 851628559 292879962 499891650 955210605 786087689 487653631 88108781 278998941 577383375 245131480 153345103 933459329 294576306 783120857 896393770 530144810 363569950 932778517 717728009 682738077 508344789 364203146 375433131 885508081 341630009 402350821 99412076 59925543 726811829 850669744 297329819 63390508 697501078 132094897 136693971 531156526 594197989 887950010 342589610 196287953 197097166 926350223 985405518 372524166 238743871 86034298 645651697 569731570 847056092 916908172 677922344 506394282 6341051 346563527 609734001 511357405 177134349 703922625 745249555 91115164 854511536 847110953 80885320 339820866 198340031 289387824 641812083 686862343 584838568 741343499 323316912 635871581 143335795 125729710 169539107 355608793 105301319 157323419 821396650 968630208 716979480 400121602 744923613 780032844 472368505 239273890 145884383 848457603 362104902 392718837 454830603 285985393 224143894 632481147 280787305 631567997 849532370 244210311 683516468 781700801 582397759 189811613 802551755 54937645 826018258 275103223 787629708 691026110 370260382 153227715 734244401 179572882 89801922 424793855 50759328 720047877 402213859 323942939 312913638 235440342 833128879 995997992 973871656 109541854 390129706 966840223 719537486 598682326 400034812 255130670 493088514 227785781 681118107 550929890 977375759 10723808 96177801 435565500 266361610 992982602 144811001 600082082 821522942 98414824 872971995 667372187 232407033 794994086 971692088 208636513 692868624 716814959 835262173 799663453 349761336 267224904 233575145 132862395 621648017 871668943 705171266 633976031 374042196 784290333 568165690 889025322 1964599 982510790 294473238 330084377 99166293 448690043 73922569 247846299 77882889 447346049 397971551 222195211 351514282 232908575 422726280 631458359 78910281 670975170 524730532 105836818 944908350 351577604 75972399 880203022 985813606 90564355 690115518 908755791 197192251 568614195 210986886 454217270 462210887 578479854 139931947 235040668 668099300 165476286 792673810 605355736 639565035 529144009 876125314 735263175 343461495 820135934 538120022 632217444 919102339 598964871 661366392 242146908 609820733 322745988 771452877 900707577 571744340 339042666 713328463 284568849 498358527 576006487 297866176 866141348 596598059 475264371 344329555 302857239 174805487 423647636 248879103 623288619 66440241 797772793 560439602 553334191 192958346 715738052 716600890 657221809 930790905 626940670 946058540 306289806 179491447 837450394 348620790 995987636 415274447 856292321 672197822 296010390 728777775 22841679 815413806 458990827 634427118 995945626 625590706 220933258 731790155 535525327 808662002 280283548 515592673 165061714 615894201 210781882 283377404 680825696 986427568 374774541 892089931 684394812 653176224 335161841 282392643 946663018 14050317 848441650 642750556 493049808 407103354 833275353 987181410 40171102 638025929 829073564 51326312 840038982 776178978 974075660 522744983 921169853 91263678 189994217 65696030 807407754 138940695 349310255 895802278 909569153 81318442 909786611 808359400 462937974 512968053 456698257 839933200 436693773 927765179 56431235 71346176 266852427 987995710 446197853 297307594 211680572 197052649 664003901 23166653 147801805 864107255 634069809 720664363 64331481 330728271 948668855 167646236 87297426 571058405 699602092 744502400 508977907 407467575 649881809 341500189 228981272 101514480 454214921 772381780 175818240 637032672 3740692 719601900 241012951 734744529 974829322 318572279 166983258 470839484 284367037 674955243 411665473 482459077 878273324 848733299 777904551 444374831 777683163 270664691 803084194 495711380 572278752 741152885 390726031 561549955 667015169 286448993 868786041 229213955 30571203 760713210 15772322 662091254 174636456 644575054 124067080 474220162 279133275 192368914 314448445 228833952 909762081 779432119 212657925 800755295 441984810 841886063 648485824 703475367 284588616 444127652 795076418 36603081 351006184 677168770 657995842 176217187 827892984 153100638 981421777 743755123 440739278 514207260 868558603 614462124 362564256 829995392 928124725 47127188 863478284 65491204 127075706 81156632 841517603 26314934 900114348 318747419 247724546 106718527 61639317 912357923 380236937 315618938 690156808 699069542 87117203 474741793 28495555 9738892 431752595 829820005 214307077 536822133 226597097 137585294 81978090 539512877 367456241 453422638 43204692 53984109 80391870 278863619 679816855 282047345 134311778 763360517 229472036 452957739 126975209 706673178 808892191 726939874 932021553 717692154 688698005 71826711 648765208 116037451 980735302 554485554 273946248 971104469 194601370 688550040 538868897 791665638 805638816 356200129 978264341 95169174 318299594 463415059 885153812 427129614 405086279 899219499 334394662 545592822 856397796 725203512 586961786 787571907 671179923 192517650 632801109 775077897 962390366 845809232 966467285 241579152 364046365 361113007 194479966 713580573 883910963 451939344 156402372 741796836 971798972 214557809 657780366 879048725 287579491 568312989 814217485 753614012 863450549 721728812 81876436 672074248 208803671 701078089 590552566 374386673 515742751 542542428 933272073 132387057 136412136 34271512 719070235 939233428 499120884 2985162 624474511 168923162 556019119 546365233 893156410 66684387 638214974 573191513 347338077 998591009 483068943 376779349 260503425 224991106 561117250 263607452 858162567 153084772 923346862 569561583 389721717 177791170 603862331 271134842 415865061 697778326 780349121 504527016 913277324 264871302 855740425 699319807 650376700 287591179 650073643 808283381 325477949 207455318 442756935 45819858 133317421 121889163 954449418 84304444 884326684 406128455 141553803 582527918 516942600 686270073 229284956 11954468 846475266 89220049 309840862 292035396 826661060 843529784 529870103 324627579 521214441 175285861 192468834 738743586 547843304 117239586 747760283 277468577 600113292 920585850 327052153 490144587 338080205 636532154 649823548 385611109 828984903 30203182 339700085 138323719 237985511 971874144 124458935 464333138 999798489 556403533 765272215 552819913 213561048 882057496 918716564 498304013 489448907 658491385 627364086 223722683 230323484 714652270 680022039 803610328 817656239 428064068 335376815 988919369 633162847 419101719 638559151 744436969 989278754 978084867 619426195 291358418 608470782 685046067 776970884 64593140 509126566 252858199 490201968 947949708 650827524 578374089 387150852 242824238 928475747 278984429 552916305 130462224 656733004 420341520 396144665 247018897 799814294 637858350 299010188 328823298 747645607 38567232 407062862 530545742 395090761 501122738 112988547 26804512 154101997 203865942 11461157 452224951 80681131 263999509 748607482 144530118 774327190 52245519 116259218 166962791 465521603 832252225 756884169 646231830 736078140 764288502 395010512 926728355 840589714 369954888 504592138 703965111 41475110 391811421 688413571 462223291 356994618 653391814 449867344 319000463 262505891 180874566 512016346 444282280 22305787 789925372 667506601 379893846 143236792 299049999 609445124 290027728 113277412 968278607 836762503 929681287 369376595 954724243 380845477 275621584 807434491 970104938 309054891 274160542 431620445 259427722 334550461 207772256 543223860 109207639 190991835 131511164 66120619 891564190 222814994 86121936 573899534 120665753 236892962 834971913 168220680 341119576 572981991 92220220 786703303 219577741 219711699 802591377 608374650 979347631 635995296 51394053 634219869 909518042 910617086 157783772 110025826 1579329 197785128 662147289 926198046 440638020 235049503 193879334 407815264 290302782 229311329 726310684 469513142 827675646 747588197 196325069 718055180 711156517 377697573 120477513 570156730 218766202 216086988 851853573 95019164 554500089 740557042 548066552 470700235 481104202 570980099 451939485 639277493 527055843 596740352 148621168 581082532 415409935 942060470 86045249 477936380 969987185 18017034 389497 416461037 966482639 742733041 238603184 546605879 211434949 43964693 613049852 457985858 935651977 942605877 166426035 933697173 701637360 547653252 120904683 198318594 117705138 118645757 789406348 682329015 99596992 153328210 669538779 391607317 329149944 163052486 468905532 823900061 176224748 692258561 227028361 856126703 114519220 613131587 482822322 602415022 111291923 829232565 388604565 856050033 104335071 494634733 995331485 162805670 575587648 619036322 408993558 567264940 322496381 51855478 333807605 712000400 453935879 970156661 813290356 814884921 421604009 135326833 325505665 994308767 432170077 469303934 272596711 998488964 768096511 386348877 676077848 682860219 688398778 282110851 32664030 624345423 514762350 543547263 610293247 904226633 573552531 889291054 612828817 588995632 161845031 126721285 974762862 436645509 587055327 495533044 564354732 796730323 722922497 598220669 24756598 737797193 774865998 17721777 719559475 225739238 886612526 787886511 376393153 744370049 915502731 876056186 873666191 516911903 231736923 893331048 908889427 152290330 818957 985098476 331189011 292077731 437204344 783114402 36580253 163478847 693109035 871478707 823765542 107758660 376253719 455937124 969040047 931628266 263161395 440905535 299414920 231678426 858403603 151662730 307675388 127218288 189618751 275866824 90071292 865943672 271388161 822245305 652439777 271543788 964722399 325815045 44265222 722680153 292077976 216571014 770500503 464623654 317036916 76641446 853731555 954678825 751837822 977327192 787543181 614722112 268771562 74605169 204941933 15779436 996914427 464484271 605238100 226240973 444728279 573955521 963547500 394587697 746363219 706901694 18475360 699315938 506884950 506443374 743244700 690556644 819905387 417137948 805299281 20396307 71828897 998293596 830877656 778302532 634746477 778027861 693137883 650983096 390395529 185876496 402983006 792963526 45497105 87390965 390502721 479780698 173519244 285076139 390054596 138128958 653594296 887555586 350295397 974780834 104638645 216204714 635631737 738767344 537246828 61628128 468407243 560630938 851925130 411384595 451021141 901801982 529008235 252757818 626050525 768251270 797009541 295212433 606543754 736263407 684559795 329802159 608143495 253484239 677972568 985898037 455248304 561169332 326557843 936822361 272132280 417456474 947919835 586045669 582389557 309839221 427244446 833311810 176316984 720717599 856435124 238145337 626824315 706179562 619833442 207037048 686814026 428941756 637816329 435022151 987044370 211146506 112434650 194660424 203524964 525062297 794742432 207062747 369018760 268267218 313190285 593240529 651120133 406735788 753710804 805601026 615263364 236668531 246678300 866582605 262497238 283963491 921494347 494704271 970062575 921777779 126378106 757270498 846528611 706204779 435849376 964446941 721027618 722757904 436697869 848488800 960193400 28273634 236000948 351249085 558393278 952375100 456938424 680549275 37102154 982973 918218809 875576316 107895756 706112198 282763697 753056766 822396134 36695162 478554838 327660841 925669962 363832768 730665997 269431047 495005421 934694738 380494059 640408361 452136140 615254471 218851240 774254599 740464303 405791702 703078534 356268446 290487877 890859653 657035637 995601879 82792299 211948882 726363150 907326022 787119628 934405615 859448971 797160503 4614934 820111081 436163877 65978296 500916237 147878802 58675506 997077590 281572413 791277449 319086396 288526374 957668335 997666165 427833065 445004837 839267132 22443175 784183696 158468545 855323441 355625162 838632994 808582646 93168480 383764316 813572188 978175923 840819891 392682338 225121903 601045643 440659674 376096278 110454240 972966742 40685471 113965315 254549765 476280189 817169252 736491145 446886447 6575563 967702778 283080820 241544650 922803986 461633995 672950681 744663217 447424462 119369191 646849493 392035891 817799149 925378524 346524739 736518162 477833478 970568867 679224962 475990859 537242112 39924724 803129683 355770513 346555579 109130925 126512683 982099351 15865785 532011920 909782224 709812479 718439877 891488076 233391411 351320641 19637847 837674937 180759055 552812605 286935090 177573955 59651556 252571530 257724808 773002756 607335251 206341340 78379824 395587204 785646974 923530955 19071709 513001074 231292144 873139415 85713608 665983546 531578049 74539749 780946781 293535644 274846904 383641782 918448395 655036591 165011329 322193424 61161222 186704662 815416474 64551891 997498090 530320816 929399724 877849732 554237927 882083599 728836886 277307065 241254446 292767012 930432033 36266787 20105624 919116268 367229830 997736710 277122135 863874521 452443115 740987094 205677289 328946087 933943179 909134885 888785599 849112896 405506034 549060971 780406506 686841036 445328499 213992105 277376222 470820337 427706860 533491959 295740081 999215350 299001563 666977840 629002288 537507252 251714581 133559416 159105372 843558805 649841285 185809030 483703037 616031281 89482288 88911726 419076824 911110846 161031734 571260204 361233633 319989557 399094861 929194016 654767007 524283092 392061556 664105141 495272997 67796283 625786261 344224649 281802919 267120325 440902315 428066967 170047249 641728766 155958328 609561789 771866053 834504745 239817488 996593392 908889798 158830186 346919311 593096161 61494831 972930698 365459024 901070029 31033219 830134392 479340035 631310262 5020444 745846778 155208788 961914357 961956826 408974192 541342081 9954418 572487038 773248868 211556318 796907833 840886015 119026079 659843819 434460140 741758456 634771718 908443695 218869399 320571539 934361748 579595085 252246987 205882928 631141795 808312274 788396736 779814767 21630963 426478187 407795137 652628852 56095294 454137370 606685560 519360334 398709530 333626964 496033569 20648673 908703947 195736538 620607509 684336265 655252015 454404223 102406401 53061498 155004722 793659626 426417862 158115480 856248786 789516796 173975997 227191596 986545985 986520669 189133475 747194513 426416869 409594341 264188817 507201152 380019715 221138964 168909854 664383719 524612251 218633046 359697177 338358146 961597538 872464573 311392718 916974098 815627940 570393204 808863883 504805429 13602950 63147726 972308671 380966538 831623039 289653264 138866722 154701758 901874346 299677464 578029278 421470540 983934509 230481017 581334404 69618929 471035752 684389527 999836181 778938920 301097927 114934906 740592499 729416605 870392486 645306029 208585182 948008137 108052374 219963389 812135326 190846339 85607600 546352831 609771718 399209500 557730458 538493042 210577806 111340835 462090798 828013924 249542346 85076750 989262847 704694532 679108537 502658799 633372463 786801944 572582471 75617559 214914877 449049958 388889886 749031936 653019472 560258870 282289911 450228073 986998734 767651533 705538871 831929540 664034882 300026613 195193030 370694941 559108659 272821397 242098433 54449032 156990556 278049793 238172147 886951981 30189003 739843263 751216424 538799517 12856152 82121976 665915549 180380567 222866099 188373010 85514554 637358647 490668922 305217329 150997499 353329790 223985176 868215161 178996615 457626536 233346367 465065412 192215216 693011619 402771547 673841145 417901947 393337856 561097034 981029120 844016751 946713871 387913540 618124460 907914862 662168760 706559994 437161953 498168584 469821090 371921298 21626974 537469976 291651654 781287068 362436386 469605729 742796899 288874370 152556984 518910639 795246023 759246244 888929612 605101220 124305697 735852909 89139859 966326128 731298563 57303743 581071960 198858884 734189424 562877450 3231781 100481525 300613741 933195057 993764596 364067932 105139253 654692965 583563256 47740137 975711229 994235529 450885069 300762984 860685913 865772001 114267970 168959406 6681518 398713475 844412882 762592537 730510587 153384506 205359802 810371079 683793370 677248598 892408040 834547903 418225296 232281937 259926785 230079267 789976062 901215128 140977507 53155420 293131511 718606850 761881903 16079542 996483176 179090481 781128320 272091118 732715799 556365653 362417034 78300504 80591688 86418261 131654184 560176969 180183452 796848315 558182187 634698682 170271963 306465244 791562498 127066808 113174797 374361662 138233723 133125984 645059020 831403427 458290587 702300174 164498190 848800053 597875464 281868958 365325901 558682358 99771374 902407469 446635019 13906183 597604867 199854809 866311907 880201959 234234576 878667488 961473029 184208718 403954108 686094395 948333338 935474295 454817051 932478328 433272725 576182723 855013564 83688441 743222914 681356401 40429058 191288292 582449090 87570360 151017463 449338072 62593953 10971423 359028750 331629498 488770985 858725629 490402136 545840255 343523046 915805041 105260656 150191264 938284449 541427290 895248864 148077001 263371474 343284605 154313252 905485258 347857620 232928363 24094708 365607097 638499610 268111079 842571497 91961228 727820638 99563601 835420292 79472233 156288289 466558853 901549178 650640896 970450244 447731787 237059087 454242317 780210789 506827146 709357553 582422764 164828174 676654169 737494681 302396373 303957744 698504713 34681110 824878953 273899136 930997135 869693585 260784316 865392131 190194403 811589162 457856042 637781242 369723042 250133599 32055928 766534231 820492290 244677992 174599797 510007428 803366693 759481899 665328862 964321398 688197750 387031952 463175781 959243884 598889831 937029956 932123479 951453874 127920701 604206235 685799693 546439315 931093622 972989563 876392179 327840033 994883008 373807353 987573323 878805087 276069390 743142656 993747331 534378220 812992983 341471493 8695376 352277280 477640357 14229284 357573917 876517877 378922126 590169160 992621147 183446406 566025702 480715996 742297908 46423583 130017036 870419602 335963640 672044963 683167324 384220894 202459681 256338718 730893459 343573043 285885951 780656138 208050144 381843989 826517825 342975437 649777183 864383384 828685435 487919601 915377950 910919843 297831912 680790473 417651097 545392531 20141128 828369999 6070140 580387505 898779987 52984468 966801021 748855070 649559408 924887129 602015563 269869353 588552958 689786499 811542619 781219796 374594653 216227454 608040637 827322853 688098081 506516035 567062554 736681955 288230530 527633265 5869560 464270164 427577329 471415931 430247578 871333912 194038886 695619299 267472240 24121184 544043598 206520903 818727857 487442017 486587864 560835214 584008732 89232930 24791588 364154486 415043519 10432992 768138646 760504251 587969839 147762792 473662799 191757896 93376363 607072809 293239653 472624963 936365135 658038990 683027395 304831269 740697347 92719665 186388538 377263966 394515754 752417536 886411843 379707050 283639834 605834122 91874842 301612155 653783941 172893389 271843679 909650413 125191836 980546139 984810524 446355844 591631349 686279639 116860881 402239155 22780600 646113398 229747680 393324196 30249944 314638325 417590293 941144783 573973060 379043119 399576258 455615092 789196847 946671846 665420299 451019116 103242102 199592638 639707367 850036225 407708398 99861786 192099549 618876091 598499719 359031490 350749320 857374045 638845555 521959682 175001580 443998272 485543043 272133829 90016015 182614057 769483977 450163862 920956045 409461734 398960912 141713113 34322404 806259750 730535006 339151882 322906211 453301092 548162541 352850389 807490008 818055962 431833969 974297460 132203889 16049320 36724433 918147261 287669864 613845525 18875456 72936525 786835657 392253197 936977743 865860149 561372233 13199674 417303028 285111922 447453650 794803057 784120063 99951336 975503244 198868028 390201339 620020736 742402770 322471929 440112619 297256021 516854468 697317146 571630778 639121895 558626945 860541656 221935145 327785727 166991401 733769403 343213718 655449042 889530473 615514284 152470896 548611523 972231511 299868597 992665246 433007038 487432901 552565618 369259918 812562504 958245307 843898841 85344959 958636803 672364110 897371476 101561686 19782187 881005876 646439808 504485182 307736968 906985155 46714401 145163916 640902143 756788283 345353620 825546709 612490149 418451644 190771710 181276225 940782370 633554804 156243633 727003707 58598589 67538132 396628488 31222974 25997814 220435900 913218939 984848369 71229676 240482086 502069168 580102032 21841037 853614131 426534307 829263249 819472176 44284062 311546425 179448975 434705283 461712041 913905416 506371939 148432910 241151588 628127637 765276463 109540900 972844652 875618324 489583527 582885031 831170471 937952751 410765025 687251069 616634211 905004806 202670741 632743849 461428418 467938929 509128178 98583754 757201540 605116174 498724703 613468903 471110224 392857182 333193261 690639409 370770272 671423054 606007084 175241875 483891022 253699985 80770139 423403578 18533649 143858596 432235211 788650520 485738332 518927055 266519400 510007143 224473421 149789809 757669992 986070627 901980000 481935370 131920308 85329852 458602587 779530284 879911678 980153299 552476176 567261948 367128098 540010415 882571838 263578959 652341845 932108221 507231036 264490436 344029486 740472689 84617081 206272556 751195575 85117287 391522359 764903482 853707434 249699481 855946453 124420039 332250848 799932816 626807182 316584334 608385888 630848710 956939452 842394693 709683027 26043682 859548640 194598128 702939749 357445252 65158974 910823069 762479294 361014093 601509004 103927229 813029094 962555376 194475447 682696371 946743820 867182058 71690626 175672100 994356743 382505000 542195653 360944360 864013254 526436700 766743380 671501734 776253629 657742256 222364467 62061638 877275031 345430715 999331629 453171240 795994655 885645475 810417960 973335568 637309891 380611426 923468061 501224264 102045496 863146107 893761140 142792031 760193313 18915899 769261058 606726439 537001549 179791675 695563831 444375883 811691481 17580079 430110001 585557160 776489586 202907760 992231960 185031302 817928726 4344036 350691977 696114409 693868123 650647663 622806953 11902293 679192237 560495757 200991443 894258216 373253537 479063396 724095713 735949472 681519391 527400659 84068313 836485604 753375084 975409974 123192262 134871069 68884552 531824179 992501902 96348458 187460746 848433266 261178403 557011182 564888307 96107573 482204388 967822188 109966433 899876577 310375952 212601411 520360762 176013185 79057207 427414122 764887036 303925598 28218580 423015550 266221110 609805873 326277655 935001275 967306089 558910578 353375027 928829187 302825851 323131247 447389657 238127863 438293474 46485540 193984913 2046534 821068832 151498565 86602382 517620105 762762002 665108016 801721709 801976001 750843137 979703511 795476497 141466220 879706064 772306817 43010440 717542834 997729966 676551596 769424631 887638370 951509272 753693479 29902417 419263102 81135210 688746441 661919283 707006882 408052513 878853478 400604404 427075792 608573277 623354381 355102371 582444943 78082653 27278907 760918807 869938811 271483347 860912416 386203959 25320129 641888750 295206740 114916864 692856121 363391836 903725857 94910016 626273152 67221969 179233843 245498980 630047191 232319377 714842692 561957675 699075836 771860949 318659596 637145687 641871113 320875842 727249069 742192883 617267634 885224340 420755936 364050767 287188163 879695510 963129879 826973647 124221707 833945948 266304118 87934863 678525316 323021100 840871417 273754163 280338095 784536279 746852688 891866003 503231386 860468326 728358816 364396695 870580328 544515944 824830775 412917776 238140397 967958006 632782770 496521845 552396104 479036707 656042206 695439216 929710926 749104070 923806580 155190524 93788487 307678309 862403269 381031620 227007830 673233925 707497632 93165083 980549148 320812761 460564334 992954609 33429122 332826625 884129593 978058077 630092174 27898915 392889479 773551987 951070599 684659096 622644863 484580391 73481763 675053713 601379554 379150320 673116610 796641312 249570301 926129328 608347853 540281559 392481908 230063728 497468141 29412644 648922065 856565864 903964345 593334865 344210412 367178661 334178059 299930186 943580812 921056668 228667722 304232709 422511372 822297714 792003261 505577686 223975896 332778818 930149812 492560539 368847570 708529082 810165720 41728620 412563779 619042866 509054449 843531670 218824780 988769661 320263346 268025624 807508596 316925264 480367325 781498870 928881771 433871452 45953141 309067460 617842394 527223080 663627840 480875687 69954226 710576957 820442533 473254833 427967896 263586208 66320817 554913203 312442628 3509278 410420099 932567294 347701597 703224777 324056266 839670495 810519312 442948588 4818264 176850423 796001721 543437578 201321904 593211248 305340387 414776485 415219252 895795221 7965300 370496161 312722088 835352759 716139914 716328713 302485807 709585650 950579733 795451179 73111496 364990438 804278032 384946647 704606330 820163763 612272236 677964530 486510076 323961890 559920447 95795734 923072067 491032634 607234261 622958842 685324385 999132653 800441182 648221553 206761005 444697049 450235690 985026785 342755825 717462619 449583412 223678717 284797515 207967527 562223597 887598991 3598675 346175537 978157046 924174327 44391600 815552714 424774573 673762727 850880675 994679805 592224513 528741589 984302312 950902285 461327927 235055042 876644461 349953266 841152637 357355433 176733697 121635542 32055838 676884217 625789938 451488579 99373766 421905240 612831541 192954398 929922645 48823403 862247081 844478184 973930775 202789513 825901651 165972496 192989149 770823121 304648636 250911596 370768302 721887535 905601172 409236825 161068786 700299064 680025932 229101664 115646924 715164680 311350894 525436937 518156521 308772866 429476840 612090111 562616436 227738589 377136287 236076519 959839107 17574654 357209949 459665028 252260143 553812884 294550698 55700836 967607718 559428547 876168352 594980635 784281045 544991059 990070882 788176136 487568205 643128956 216254738 217685166 871817291 67530493 700546716 838910586 702826440 774022436 222901972 581407112 165719762 501552989 930109140 263278689 305374466 630084925 794143726 185026540 232411569 417716147 296690854 245365589 578821609 903389985 480304766 731672028 262008127 592708396 453226249 924269700 313229418 357567760 369328321 514028060 47589243 308115171 374141253 829115829 128056165 486481791 713144464 133426384 966351942 351064394 539980720 193914385 931759705 49205764 534769039 891474176 382203311 238874397 910796952 925283789 659312243 243101067 867688644 902181156 370805907 958792999 576479333 898376517 594401844 664343672 552162270 193320083 550495637 656494593 272354852 440207730 977122281 232184027 709111414 186510605 527603660 462313551 630916246 980521005 706983871 241158387 141752952 480269995 309664320 923518985 678022794 407387000 421878672 410652253 598572329 588672513 514777508 146689516 576671957 592557670 10054745 146916455 770539144 872535593 282509817 71669962 287980349 815496610 303442363 846063284 132319515 105926663 831804812 994971868 304739263 697105442 14144356 62533055 510433714 679215231 422962638 388826712 764789431 731739918 212234814 267416935 632671650 835410684 936024456 613566363 136195892 207912619 49936348 726198789 367068904 428279681 829516907 589623073 805720131 710781708 771007156 292441401 390264085 861169398 199059552 153898906 631196209 52340632 444437456 502764861 712951079 970608469 180158002 825111709 451039691 325008211 538451057 115094727 270520970 869483026 479107146 905257754 379260799 195570165 945773219 763457082 36512536 675625370 89310868 238944240 679692104 951328769 14054114 503066977 543389485 746284086 182091944 35665373 849038313 782982734 220575125 26874017 258230151 980838567 385511445 715561797 372726837 991483856 839358147 912357307 659315858 579542395 925061197 397791543 881332909 373023130 141246647 275112759 79242653 460459079 89515327 71925076 890585812 176562163 314062885 691750238 958961289 330140785 492520945 678875850 343077162 40545564 596108411 182480988 185782634 215748316 172626897 412901929 646758597 245039757 409849951 130937598 872384054 513003267 20676020 78081958 579153155 705330389 831752428 914076923 390441866 843782007 343769942 301256490 529142960 714784970 343000654 530759385 160949386 293215260 447078585 992259732 181248565 358976776 769691457 49435091 121043537 245652307 785272918 844436904 127357172 347736603 810204019 408219848 228088473 298582973 771582133 995549885 561268757 838964950 270290705 120312537 177159282 661404218 80163533 138281284 773490399 47752804 479584692 155910842 723352789 978602264 79679719 600883185 39367173 734829580 635041757 142755330 32738089 841813128 504168734 523572879 69793082 103767388 161450811 885664418 538941888 909859112 852739069 516813949 956712187 443875495 405036333 320236978 238194222 534547113 290337586 529296890 5082517 651491702 842347513 5274928 938510736 763180529 160244322 786471449 205318393 450603287 568260042 559014256 545680009 338224881 924540960 280523969 684467444 816781149 369884791 797097779 6644035 728849165 353873763 471641774 877550806 755242109 536512358 974361666 881076527 290498911 725964684 856677230 343807011 267290232 934959919 772834830 795548208 471472874 988203596 393819967 565893820 609254263 556606513 718097360 98081422 165138118 564780752 526139205 183683388 62621527 959132475 59154528 79509170 549811725 158630471 532591428 817207253 338923343 391079667 468233139 23875977 688583966 195031741 876015553 998746775 513257018 680311533 443441156 615367394 397912664 559512878 589009479 826873964 628266397 975194625 491106004 389428231 9481474 224773069 930894239 612816471 204061227 251690416 971549527 399485401 559377185 212257111 391309842 909617753 609377289 819700454 655915066 510299294 418251546 205288430 858649134 539729096 943547448 469961406 757443212 135208761 198474900 572284374 882899389 255914599 370815482 348388366 381526012 872511218 958018627 972610250 907282763 823844042 130254174 847583558 554181206 226948042 98600450 873801287 891907958 652780061 659606759 982936167 578747977 919156257 194816641 778560786 991517348 888716966 619457832 756737661 744695305 69100074 41536805 918850241 802301871 886330124 263852295 903004975 892563383 462131989 210563578 537758136 573194054 477789241 294267324 29655482 301498797 332977505 344452538 481097957 734295219 79437682 21936011 202605127 155400117 940497031 89956568 949365507 761608419 179751124 101414797 777140491 536328824 39297626 270602560 326672966 209246160 216814871 534773942 794894708 881214018 895905037 696852356 82883727 581439675 56117199 546958092 599383194 271679956 207426382 804383070 249291006 129511888 556305414 986806482 603199817 583844818 313402727 263058340 914114 603110943 201608525 166576813 147732701 141569799 413105684 963322655 69835278 240943476 524509080 124219609 297357298 798513625 96406304 923493302 780391475 551434975 724952046 892883403 848853672 766094643 128455909 707090815 185901584 614163945 739908180 992364438 862384827 127883057 41339367 657202492 868607873 54269524 199288419 447191310 528577871 749658899 97522175 256921715 185363264 966263210 694470658 397762990 423027770 64403523 252126598 875721319 220271440 181359016 632956580 6701246 969137256 85143684 354083935 696968286 598194483 336808417 143631200 743195642 767768409 791775299 773456396 864037261 563808142 461573616 906812802 994724249 700032487 44797837 152652904 637790884 876180568 484102878 788017942 225431755 157230549 879721980 621707593 591495969 252490217 536809149 531925746 1027246 504791638 92366593 338473977 818624924 485098842 747967465 412872518 689527977 752481343 313803782 588965768 446159818 617139105 152323041 439890669 203621945 964853816 497889016 892702583 787963919 873218059 330371548 516798540 80110380 813556099 454941672 709116931 711825094 678709802 835016521 205385437 393116055 947036387 748136485 247672607 838585572 318535464 710935121 849591568 184034928 862468945 998385055 551035076 652438242 600638543 631661142 550619166 164845128 340771231 92935507 772709957 877785777 475843872 417175752 184943045 900032055 948752098 305576910 167961589 994929862 699617556 751566639 610085722 871020088 649275795 453345821 410817602 87718949 933709007 864179404 947430667 407366527 612225861 722755698 824122990 228592644 846847159 51719672 551309245 632857008 475866435 836255817 337272759 385819296 284558731 796882404 659977758 95378559 547561896 437979689 432987720 754041718 17483160 391684802 323426773 938136607 685286930 771917999 350716963 941849494 99773252 780175097 488418575 11844994 243986338 166990373 141877248 149966650 909878237 561274094 951577764 310378045 326555113 456419732 739077323 79514343 702001288 865753832 59164929 677437295 706580891 591180567 944007536 686905164 637564254 810100209 588121900 751501248 890878783 143589848 894483022 378530519 207253714 314082423 961687696 59669933 82319419 153170023 913913591 907465226 535084016 109701259 672927528 555775925 555827810 468566297 930566477 204346207 502715003 335944259 149089315 566503996 123953383 154741550 586508848 233194574 115628379 275569778 730468484 502861128 249404451 347915309 930125811 937710159 227233890 277202184 828649839 396340952 925382156 142482914 208001348 657338580 821590803 860785019 974219588 777934797 237732486 17614994 630929902 443420111 822585527 75499498 81989813 819491383 141619125 616225421 316039694 20460798 364755780 479434464 740640035 242412995 654872179 691531762 542287190 237173039 71056086 737198425 605662417 109414622 157408219 337321458 546206219 252743539 11032429 710700846 903305156 165393067 326361309 30118175 262651525 972519698 999020266 819964717 294345639 263563472 772298145 726691191 702430742 83961557 558088195 582950893 601880659 860137919 752858035 393659720 865741752 127205477 903053236 697677377 360817450 488320891 221411567 108220522 206493489 973956091 239650740 572559713 552660429 644608888 138513085 563733526 81701541 25739814 121321095 868969127 49478422 738215873 582597386 89459273 254800162 382209807 866287439 909120838 587604262 93706419 568098212 799257511 925309743 263756575 771104935 352846464 499056981 170416625 730976438 148592378 516994353 657092764 109013926 942310815 306732204 975811220 832859341 45032452 786317069 643867961 190359219 719046161 549390199 66455052 258330405 153444987 37422688 748975299 191394984 130759138 820357896 529283755 289174883 577025884 994344927 783996890 346028229 530416456 341502686 360037623 638609250 557918205 8395970 638975840 200975044 758168933 247557971 996350951 225305225 193737925 777228657 671034714 44981234 83713913 848871666 973981544 136669646 613105435 905964869 978381886 526795097 746089113 383492044 216380681 580471082 640005542 1431108 660787213 899666553 582140637 378089138 266013232 126962795 738284325 887041528 630751974 478127586 611676699 796696575 802114183 764094201 447263216 445083578 119409924 793463233 383322608 665053706 27438598 335466897 726352481 49336416 55578805 848003719 132411091 954313322 312119751 28583927 766375258 641913825 517220465 886608801 413623658 68163706 703565991 707855991 583416892 725915791 179233485 93949753 43481656 326206973 309846686 93061009 666357990 700609254 343914788 438021818 280748978 508270268 397154915 624502201 84765899 510166771 753698319 332832460 661480494 525644602 76645705 93185374 332487260 524172690 946763311 991950775 295964277 467958993 524949148 147722324 423686914 125070900 820675615 247616181 473804219 33060223 644245900 823270762 564835664 787284126 374204749 742698225 448955776 310627718 330222946 819399460 160061966 375441870 153963511 779134053 355806525 850387857 325014912 460913759 367997393 584547526 528033001 926682996 896147805 481525551 710720737 399187179 815487070 867215492 55125181 281312082 712068210 649823824 994710802 395516986 488632279 849222508 519057104 492340175 226059401 685113714 585343429 384578865 968141067 542163861 569666324 87975591 585645148 271999989 864248542 432547631 83543145 885609048 611934716 261766170 269558051 280849375 930489445 416443697 681604301 644120158 606781689 190536421 690365275 410804637 324932067 108046345 780966034 533827009 494392689 829753724 802468143 170233600 941198339 455072237 217232416 544812751 616428243 297270084 373013944 940784279 364825369 162403137 818234859 704077872 123479956 308465971 925965937 15957960 245492041 994548511 626100305 429202879 306626569 930436935 970247503 435364720 163290820 804358123 770925795 751509180 738932934 119683369 272359575 424979331 186030573 521722198 405422343 751752785 735724063 445451448 293399865 95824403 794638922 512170850 136072199 210066397 279133064 781710066 156891353 283999092 112721039 950888544 794822701 188654326 403117435 881445107 442975909 686403978 988662961 415997310 390090100 837885978 748335441 702402496 982427803 533824450 663907152 818070002 505295525 805149516 642916214 263811016 380098756 277178035 12580273 763811392 376719950 436597942 321372196 97390110 391400307 533947558 440461921 825038321 39496730 908885577 515723254 306172243 192445470 192442396 374431243 257762072 32477032 900667024 644318686 247542322 393094503 748728032 697158279 1283083 48207525 310608868 57856250 205840096 992704204 699676195 863661634 636503034 442086737 107489189 267246340 339832934 673310785 114164811 45953445 502829896 455405615 425308826 720646408 691204493 389659874 145552027 187576006 247022605 262046213 997600594 935140424 42185591 455693607 682651689 458651917 885038423 74049758 965338373 795306001 803563311 117724343 957299418 286136089 569121617 446469432 315658144 909261037 415001427 959880150 87331951 474381259 669881112 421762120 602100891 320315156 348537002 680114508 236344916 948612108 898690181 697938915 585723199 889710770 481586996 387244259 425414251 937191742 129673479 138032436 400940254 461881023 763765241 634238843 328825793 84063987 253754314 87483508 102713113 109848739 570460566 462973926 558571854 306151985 366221816 404394622 186762201 552986266 977825795 227028258 349893984 575161012 503211553 941752741 719200327 553592632 563032074 537326729 379445128 365281422 269847910 845823830 817261922 388873800 117865555 314539020 758629745 461223000 854365680 878644930 108981068 528907263 804133916 95069683 920127584 837830811 279065519 548221521 42823365 983909915 323902774 111954695 840030268 467512743 796036821 834855328 865071955 197565179 751800716 529673920 785381102 197174590 703210696 778260922 895480077 640549482 648824480 18804957 791333005 958292093 664384855 58315330 818486068 586536279 992178160 770017949 188724682 947497771 482486221 5146593 411023363 249065057 603733280 758259193 452948040 605384407 129562814 95418908 514711091 838507278 402257369 941858930 446572019 971018506 908617417 937570694 77947164 18111855 866912774 829041758 237859937 578363323 860143479 300289706 416320565 484307062 150288361 243021598 848782244 648777519 16362747 454404682 455813553 45656351 750225241 460356709 390869554 309032251 988435708 948790100 390376339 553475396 397168506 277429519 93154479 698954897 463114461 429189152 908381743 625985587 420070879 697262239 851833829 36202189 771286445 129141336 820168546 277749123 351499150 869572061 604506650 294836488 572309876 998445316 443386121 508734347 320580938 304897831 811712630 490581590 976149038 117834934 952893511 868698683 495573225 334124908 455382022 372386004 384657304 718974153 722605197 178744644 954770733 779654966 470437668 350763826 916892285 566036696 573931363 992475226 343701594 509653287 634489828 448237554 110834819 814695382 927065929 970519585 915926327 919829997 550054745 847615469 787384784 676978241 740411218 708855680 809562489 458533865 342619933 242563548 4389220 418680321 361214392 524036677 669973007 444066414 670402408 58938985 906946554 125812868 178874677 828048674 768787847 875827326 964438713 234078626 287671123 362034109 586091882 477761261 465441590 109116563 789989250 23729068 950092055 582963850 168418809 868301490 138817526 782575451 518436565 792853480 653479251 897894686 80313934 459554317 541286220 68133836 433622192 579170795 371977493 490711313 874924414 688301073 437674129 744642503 296093329 955877713 312086688 522667226 961439100 213710039 298296478 511876008 154860438 407399278 481961354 363234116 262498614 856577047 969959696 558240807 309508054 276656885 248273433 327736152 591819145 388349108 648305846 692631300 508449032 941713528 762787773 839260558 488229897 125097604 868869426 959950742 883847360 930757808 986303583 831246681 868208930 148875299 351097899 605711239 307229859 579184601 599154696 71602712 514843073 845493641 665165082 825124778 569628648 354150669 13282734 402120538 31035943 568653777 88058758 821466911 279920718 491306693 101047169 878782156 404181448 631840108 620118334 727395995 970056206 204430592 182468446 789960358 267791571 644001034 314595580 495906765 605538220 133280652 783848766 349650264 705500758 442314993 332012089 828456898 782611580 528318208 38950457 292825898 863522725 705763200 511916109 534618013 201316854 420221392 136519876 149826088 716227527 507493377 989727320 606459982 217150570 455695324 909825658 690504748 967645901 415537204 750561834 672525898 438723209 149049962 662047890 67309361 122128240 736708998 45098774 604060688 203631346 2430236 506456280 536529595 516853529 591330153 145337628 463135469 91746698 853569167 64244437 851798931 588768967 40044619 528085331 358822660 811532469 674081096 6069160 515404504 67677609 535400708 911355149 723840972 776351698 426872902 921643715 682669013 145088648 547206290 317632708 27354806 243893682 918303421 958577484 180304157 745743910 256305686 205622115 996922953 240912393 12701941 114626983 61863606 891196286 299127717 605723859 331260602 436709482 111311153 997218388 854412115 329884696 875152784 216582391 436496974 711694083 442518378 54954996 154981859 886649932 834305215 471226748 684966773 85331480 932016600 296699284 435979452 42222943 220056893 12805366 914416281 58203141 881967608 305649332 225807179 366052051 142698828 476117304 887182381 424786920 178157961 367941668 975065092 459462801 320487833 958607160 544644336 817791316 542545928 509926922 461771267 694719111 339122742 464818032 648752725 901165518 539312558 171696119 375515989 310424023 116872113 735143771 243781820 826104030 991616093 512961917 301507622 430098371 975999228 576599895 473921363 885543931 384568295 13973649 872975685 562092637 917503116 943945140 127362038 84842431 304909945 706531458 950227103 312499864 172508608 721599113 559907897 514065302 599648985 887152974 58997830 915014191 883019645 389745889 74937237 471589617 666532060 351771449 155422585 525394033 649192876 470422757 356785936 730209488 797814342 817333181 901135138 497814669 486613384 396014927 15285040 229824100 95205827 226979937 343119576 941212291 45008454 990023920 417023271 225165402 678127609 685540376 552788943 178458941 599730053 135616124 165953628 122715342 857564777 326191832 34190328 253371713 736216214 294060504 261913956 953840034 383340232 505331580 834365415 804140644 305824277 855897472 180110762 286344943 426713268 707054849 541699918 418548350 122080987 869067824 609335008 593690873 417573041 315350746 704955253 881060020 999042117 419600749 498433019 814438886 855672365 278004036 10109418 129299518 105724503 680520773 862945347 207362501 762093530 867556614 47670506 919687307 749322744 390707384 834511076 694151131 329669859 370400090 221529839 432229367 670434118 57393213 656541579 507007588 737663881 780859700 999540856 193598119 281408536 463483321 469562320 921615967 374554298 106066417 921990855 948787383 65708758 108659617 767526947 400023918 956522562 53536792 829672790 145527031 598927477 838889368 531105566 482100974 112171558 281623439 357117467 856820768 605067453 395400823 956386278 841543294 522963152 192210098 86962319 338240336 369536032 736773227 258334295 18826492 144950470 132559871 282032255 505868506 423552566 688442683 50666131 199165719 350662262 463304557 445435118 963265776 748155967 234769971 874147015 302874381 367862268 515604584 730326965 631501449 303867024 428573327 74109890 953155995 976250689 66310955 526960474 752899164 802664037 290720094 488628334 750748010 688602033 17123829 162670877 449839331 420535081 678417716 483577594 204805025 927938396 227798218 87354654 73754761 50875779 427663859 636391448 89519139 951563851 797031033 50574512 862493525 906320067 569030316 546063489 809104752 66922744 11415099 709617269 140314285 123462541 149548702 778633215 82644373 146013539 449490274 633307222 757588190 598174226 156881989 73607783 558639752 47490171 165080500 767091713 609923718 878569747 279104014 596102023 479386862 12774813 134898047 225062310 161700142 960604398 388511831 813166206 929566026 621617939 868053572 802472365 843260421 330686283 199654018 813020244 421435508 739004474 3624521 522482468 395462085 864190287 74996289 588360625 218065019 371181405 745096535 748703132 182067872 776367233 77518870 563381670 357283610 990367644 375020236 45355326 585129658 550293892 502462304 426059439 851208771 490982948 346750536 646487337 111346916 700076547 54325170 627340817 391273852 693093750 135864942 529304052 252570638 718223509 476234898 98730610 822030068 759823662 134029038 100877657 638024856 786145502 636434443 999110063 694200140 442624255 648135943 808769476 700337918 188476876 446731479 421459928 365160477 405055624 626967622 270106854 365209777 592700733 839788622 402480371 611299482 180138986 667513078 881563510 58659178 977660646 5630250 313255019 98795764 325266383 381306429 403494283 338833409 93512527 210717563 44826421 446513393 602540453 555282572 929592084 597121092 236099196 240685427 629725245 626485547 218485960 445861909 551010447 449635406 122333786 895497938 41832556 895804968 924177338 887010488 147142398 755560500 663809693 811897131 36653435 357702740 403689611 844627430 898969904 639832778 296010407 432450381 254642519 150601870 629677434 375818025 521517478 174503712 783792922 755502941 160028797 67357604 997347895 818174098 182591467 217723010 617541288 455208333 163900858 558187093 951440957 925534836 647313641 400132177 238055659 590315785 454386997 786944458 529904098 905817780 314243293 330417977 331864082 104018513 692208085 678341412 709678101 70773332 891436269 285972329 370372610 499258286 362002927 756341445 936660242 567632064 88661417 450837542 620997040 34448740 784134244 846858204 853080627 871026120 99961632 431388591 977270957 958901047 22751341 137069083 811706572 657310848 883943803 752841918 662490063 471699126 260024745 742725481 271336089 785097495 9410991 138635632 66641221 355904300 918902498 749707249 720948075 880566887 363085956 122821953 412040379 816484978 771783995 312630178 416108697 693074677 832467265 653497755 12689061 630795604 484792121 284441728 19119335 181014319 468535916 162925026 897484486 189368818 676380300 477537776 54284262 817438841 387453644 699650338 712396778 920517178 515941413 593967702 60577932 316043034 150650273 643782066 759145132 828486174 284467240 232332943 907846837 334525771 986783873 403585770 481605240 450216739 564783157 890441237 581476045 656939109 477870699 59479744 834032840 539410057 906768849 865626856 751124071 314283203 174563319 888552731 761084113 822198934 916754652 333411742 740375076 971921577 902181996 186988767 167786609 239069496 373253201 883397264 797801997 385584667 213589898 931447589 998475998 958260579 611033728 127964232 988949246 836825957 294321431 227144986 599703929 596352848 567144671 701868622 559470166 137670616 141444432 734881850 903776672 163771582 865491716 824380122 452143543 403752457 54612452 439046948 298812427 38486384 391549446 472683211 62751536 76493676 571749716 855523119 322412985 594480476 954525322 868405020 220012484 886693138 252493161 952424986 755075119 597413072 766427254 840706968 640807208 679623168 614884419 662054221 652705023 363783510 722237975 414148849 571454971 643183243 214467440 274574500 817502232 368346533 725590816 688750615 865306017 614019872 743920286 897715061 892832945 672512569 342963757 444040396 661592026 244818914 250157813 957604316 58225765 669519861 417869896 708679851 30614363 497121651 500260881 198978698 640441920 342191319 368072676 124358884 225812267 582623612 677950926 627527263 149900404 113415736 441066697 534062626 181883556 677755070 272810020 619196005 4705328 509240433 71279755 953520990 72003636 512420882 681943432 848109819 984960276 305315718 579440526 561755334 929842076 731180261 860947971 173255075 366399884 964359828 279164102 421112548 477914317 658966406 406641222 140305800 924453902 120678331 807188086 413811505 879608918 236484813 399523772 38570720 594423571 126512029 802433060 343714146 572284815 497179962 236252900 187015955 264890050 653751894 352886974 947695228 123479405 564889981 240435728 642931788 328290970 767161426 328497310 762484074 133443599 749539220 595516430 178050727 507077305 599368406 966296387 703412228 68060353 288000393 264071431 754119230 782515989 433802489 179654931 478166811 149236927 304156736 391497134 478019309 34909302 110677145 114261378 267196330 803527642 47881347 624722757 131068514 557972139 704522315 278636542 506578753 786859671 514466772 536481619 975157171 294720898 200944877 858798848 731932798 749751328 630729375 150795338 278199904 467881363 160620136 62246663 914887363 514546942 793734479 47824988 227588449 773533737 438266205 596912079 847981483 263551383 530001727 420174874 486252516 801000658 921204080 736853844 720108060 759841631 902912686 127639944 755536401 518701068 655373342 252523433 432130168 140331094 2413571 824677184 935273789 198235116 50895251 869664148 12756145 242302376 984201124 480013156 690354151 617242688 649729452 654315106 5411409 923033890 633777174 553622777 59339986 655844755 579068807 424458612 746244858 647025425 809029984 953756649 595393045 733453000 61818653 418790886 76121444 183084879 421979095 821773596 161134070 408868990 648244778 602320871 472633452 194982931 920435563 742437667 418401668 946678042 138751667 872276904 817565501 840813664 119824595 948995334 981591623 761222386 303373133 941385027 4598049 162179306 151198298 86550636 522531310 168222441 388466418 957484550 549635855 249921552 411886145 208010774 25482419 946536761 541353571 832357627 440513956 213060734 439800881 82772149 878991762 970454742 137652543 522898908 537140475 217872395 800289570 523873317 365050011 192788070 912073554 967216756 242249115 11341106 876797371 495040672 155406074 119433097 795121472 336825057 70071512 365489637 677746977 359189985 607883366 491123615 521951279 84505119 160285435 383947449 337133250 695656552 430386016 912785389 195125871 377313236 407836400 535631591 334801775 989490533 667696042 200295231 168201082 604597339 423340428 692564077 515957273 491929082 898750420 38593673 944297242 938053768 93305790 335285326 150354324 573603407 176011011 171469898 196358973 310014071 828365720 576765845 330584949 517240248 18876861 440913574 660460844 877315687 459087566 771107006 133413167 199090625 956017967 293826085 442768025 658029264 122903082 26877528 158342908 674291019 661954341 477904442 27355976 845926211 330876606 57480460 788147249 911354334 167126896 963316317 361526445 582388093 685313600 876500120 627839157 702454293 673316679 526247952 77356278 954709882 761238321 681695698 347454656 222549037 574009085 360153165 128136149 464846984 291442036 679421051 834876149 349198265 569904807 626884751 119138690 934533432 600177563 222403525 459934344 26294725 495209227 593231907 186077791 423380432 601371646 898258510 870086502 83520459 913014057 14884785 548997892 989678133 947236252 698026981 148627246 608025820 438936075 913565888 902396877 360597757 278038030 429070278 784332733 610440034 750497110 886326136 676741943 564475259 942440652 971364266 189883731 62353202 790141660 564458488 646382899 713333777 617354542 264594788 933211058 672454294 89073488 239007539 295482461 958676276 579834727 804548302 447104132 823369747 568526068 35757645 608952888 625121607 959435100 715665556 866316438 128316988 251272944 927414143 998735276 338825120 375125844 163060423 976123580 636763320 58495459 855052817 803947362 830569764 885899836 994875671 655652510 811949086 586589284 413697071 914322632 376507123 658484942 779720239 916215533 181538094 630772443 128855378 760747568 809547554 143636571 330816770 378967884 990648926 59715797 210095013 52200894 904624872 145815769 479194561 95496518 887560652 612952824 977524367 374591548 66967355 398127624 463646718 726644946 634980007 111498807 79869131 215996031 546178211 347301223 673523622 388347636 189213099 179149892 788638337 352201872 552685253 132251560 676766384 9338433 720057825 161531692 479097059 575291968 50715663 173916211 745187773 562712922 983453639 408973643 536388703 591661364 708754911 381671438 656367317 522458488 981866033 649887183 78471363 110467624 278890659 25655426 839022295 513587831 900243805 870437890 428831811 869630436 555353431 899293332 112513693 906219504 972212238 336698924 562636869 995127944 721392335 682777434 597274420 690974281 512044694 545790078 135759303 351317842 44373792 665100925 70854391 394721939 551162990 67715991 595970992 540636508 986724379 753959924 775186202 924096078 988863662 382675977 631100867 305022724 247141647 7270676 86959503 741732660 211957237 145273223 764562668 632438136 676979269 571268300 192391000 461129308 82934005 420446000 384414487 621710451 286249406 255697989 837357719 189104819 742763885 993230024 615289599 87789276 436040138 830250286 33683266 650289620 825280300 660020059 62529461 617587535 126564979 30390849 537047030 262641110 198473773 727397110 311520451 502528145 888087580 589703541 529988971 594414910 622517116 760931172 183458360 485994278 505833348 646932171 319170663 28604866 417919511 415474897 892838345 216309954 51799932 171886605 517854437 133896001 489001904 279235948 267289327 298037612 157175852 533639861 214778743 696465633 978343742 493789579 674557359 574372091 512220016 691560125 420689297 94581063 319481098 220544343 226793916 89155260 184868070 259695198 67872235 717329323 713668997 882039835 742796109 225212790 133020206 344461422 46653647 980776278 347956672 395782463 402649602 415535234 956129683 319154036 343621937 632750491 640717662 994133231 362470830 323628407 527687502 1548821 593219218 967347686 298816295 883754152 456640308 265881213 224065534 181417544 875271353 42726029 870731495 50278552 708220026 643920566 319180602 862097367 542137833 294418002 744865256 167121598 606696230 39021469 987307701 908589649 995069491 923459663 458436763 520388201 486182804 376107674 550418019 504653047 763284068 943962679 528728953 652819666 536329597 342060523 347599884 6419086 48638159 244717959 381859624 968102751 981581801 866777081 598448883 733769494 102129888 775755250 780797509 349485714 261849690 675557331 976674574 249471152 930894993 20576987 992263264 461506129 6261573 896682596 501606388 760840064 330277145 608762835 948652778 127037788 876974617 705492794 979673122 251115973 559869724 774266874 947369615 563516102 396253386 856466381 503480026 309650349 633965755 811486653 246070586 847997254 109100304 470663258 519935766 417861957 698709099 594597619 422908990 52892541 800912980 165379532 626024510 250288520 71274652 84591050 80936448 877155464 483477916 731548269 277669250 497484146 513678504 599588543 848146076 824675115 208983570 731349439 675597948 744229867 603780981 783730336 163515686 177478096 102418989 647973417 220914829 162164032 242103527 99200666 285087025 657177450 162926546 183491249 750153542 982187857 254471826 271508637 207310377 540365203 127067830 556875655 584991989 327136265 438859161 186962722 20322681 530334965 836595663 304062842 216579967 330611123 772935890 460703254 723061591 614815461 739684185 493295766 320745411 413627603 337900502 764858105 757098813 731020847 688682777 857268584 487272819 373707920 764231965 363521333 333674532 47946415 286570999 541445380 500744735 989868865 500464425 358507200 68824606 858225270 124419043 996455053 164082654 938645029 7775045 623118813 641891841 530634692 179601955 209073835 614695530 869289765 142217188 309552077 383566582 838618524 740046990 950875441 707522383 407591619 418032239 720795472 117581114 951946646 85228140 110213833 235041846 122669312 407329795 250447481 422439831 596255238 169268075 695892551 309347130 304304017 767816655 254100116 515326354 927282475 232894041 128072695 466292999 923437454 582804059 797934953 792189168 918754617 300330432 621467114 811631119 284872962 737419923 673462058 731487992 50067393 969578713 159213952 255939596 394034746 751954728 399508541 528421165 715884152 809638183 2886793 340109881 586842912 402914592 425881985 901987212 262205127 46178443 702367123 634881535 645932642 411700648 587635227 96125385 397581435 980434614 508080073 994106387 819947491 716123526 957052194 613488160 654672251 812064104 726630466 700246387 683747691 490258956 339907794 725770878 656317283 634293370 552654934 482736381 772393942 556426809 598382496 925743422 262831289 103219969 105486878 550092864 363883963 982370278 64231424 639925773 898728448 730020973 800538450 864475020 925052332 442301178 866440580 321821318 407216920 97001503 34464037 722439347 150909232 235475209 521890785 819829282 984711266 216707512 905127026 324152073 209009428 151850965 184672433 503032165 770929908 215236360 603483290 336921746 550575075 58857806 117329381 427389328 943841227 427198248 767077629 795296572 27719052 238587660 213857691 296631294 719687497 660230875 773721539 17422612 306088207 764860401 227735709 925346529 557853041 475582987 825881778 860324043 688426820 160177742 808139881 658143108 434083894 796034640 879017507 838922106 79567534 889364646 437185281 746964821 752504402 198175594 262053426 102508470 135708560 656730113 541509955 691216315 880754858 860926229 147476143 176459196 208291792 862050192 595111212 915689286 113497771 236999821 167236652 435122088 441206258 561775094 664577853 489065659 857409143 190157570 49819319 465564260 357592537 456765245 700762576 719749395 45792546 838390633 240538881 494413063 814017738 463093399 549265563 8027444 720005413 787206289 909391498 901131382 96276059 473553066 264455667 742188173 699787579 921701972 283669240 13634663 283806931 541680735 418936381 781909418 17688555 614080897 608529612 435599398 380040789 519005262 38826999 263760231 570596338 347629501 750289382 345297726 680858698 523350480 192254326 882549910 192914641 236659392 675599022 59139211 774776667 757577217 301659046 691855762 428932116 936966932 264835031 623719629 492586860 279423468 562642615 176962701 5161925 14788472 763338231 492741379 164900596 355082011 596546724 474385166 513518608 317106362 657512459 490224892 865528439 628856063 622287435 260322292 885975977 591496726 941916730 5162122 713198407 233088593 336088028 415682483 920422344 884980341 815006285 525781910 470128635 697320171 699317418 62736971 913409053 700061211 560446719 876364319 426794059 348304221 201321091 769282729 369419239 825569683 760880874 526761347 729253310 618649697 659803335 569741237 342883368 354438670 390801509 591636334 222782293 482529169 659976359 161896042 637498199 197554421 17860318 937887590 875866940 144389169 959310795 568687748 921096776 505928323 801682079 996417309 666264231 905414710 80710973 167666932 938865614 789477021 254483271 16267152 818368970 784821614 373064114 864964570 833399569 645354955 291943026 428410391 980109424 251873050 236116013 284331272 118351866 246432652 613589497 906115305 258983450 943879277 574507395 941864963 832660127 991293913 837056678 596608838 981217095 851632287 669412195 261813246 964712492 800769789 944324857 618692352 962514064 674510645 307610168 63449734 889271217 184778806 985718241 200970889 205743531 388345412 502604993 450571004 28704060 421359930 781090299 399248322 442585756 129906845 376273317 456547165 431157857 497647220 71726750 589053156 121385131 10888709 941452972 380418743 982876496 372863324 381958700 276427523 568800774 974170202 113231963 429515893 167933613 551651966 420128676 652319980 88880477 811225394 446684483 202625960 264968814 996043027 258496345 983294928 734994303 505926304 542016859 758200334 601725280 330339540 447681347 914037843 370307257 661345714 806626989 224808191 108999292 702213587 632394944 897711324 272907376 512846293 56030760 893617398 234495171 849211937 559617400 402816763 240590213 109051572 919971612 566478652 260006935 508035321 730741658 196433818 269811576 145542649 863409252 772111685 739685718 432112608 910520970 59091585 510533970 864370881 837626893 108028120 682723378 217260451 186775527 641849533 150841210 486189003 417155849 460399842 77148917 709502849 54557802 693038982 86724288 907125406 984694735 932500704 296547665 903000395 766408760 394184811 462176428 423851888 665043710 701052711 725801314 359399111 656538289 870335166 397628874 71496389 267178404 857583130 803793226 877304395 926285357 48856846 784121698 86769478 795738380 978033238 993812576 807024506 907769977 309799264 170326704 184014121 388383708 261599012 819809027 362477998 203510448 870969677 153068397 172161441 143406368 105173488 163484640 784685433 192641212 89792400 219011012 565571773 977521149 790978731 896304653 607347023 512264472 388244716 25056145 887649956 65471461 834583828 257780209 709194376 652336503 256915884 122906729 497605049 108528465 273664487 511932808 227117823 59198724 952214781 13186685 2652251 557345189 313057164 21286836 44049907 965256296 383077685 531653927 557552198 690397080 187261454 773132377 121992772 422242237 740807588 321344471 409239915 322483900 257007930 742234463 577045177 720917328 226522718 232228061 877238861 395764949 306842085 944821861 463612430 832965211 496274121 472322552 312234621 178385572 157124006 207587831 763094938 870788538 442143424 445296696 768910248 63675145 808248777 769244297 983538589 703948104 979875522 860320578 475601283 936197512 995244968 826596857 164753210 689599705 779199423 457124359 418965580 477234571 642017869 749149693 844209280 836180746 776775147 949664546 42026005 508203462 38557213 696047360 420494870 370283989 357307883 717169297 540543698 744025382 663592285 626869428 257701551 265209772 496946852 125437916 260415589 92583876 931107655 881706390 611341287 681820575 683932772 54091521 448618099 37797312 167196251 806701755 794067768 809685690 321045958 185508711 975009918 640030885 63159599 147497984 539974406 448870251 770419909 874358158 515664941 760217533 142094078 964640226 130531585 231757871 903293768 938629315 602113774 993503945 197223499 325160300 826956595 91410480 396102734 806998172 52507005 440611365 865621081 864202545 288125881 533095453 685363076 893393726 787900839 653381351 405343955 73011516 556067948 349583132 695109648 790591266 931951910 235743239 826660783 239849248 209536044 425647498 29665899 243062102 354068783 220521836 613757734 765431119 356379686 93304052 197009870 191959402 436480981 835602029 304682441 74552018 343234158 922336284 709258113 14988994 276848012 677900854 454109908 145227826 715073887 790481698 729518165 551454711 827115962 809100156 1793373 791286342 101344500 925683399 923022318 502940645 760712508 253441391 460976893 653630922 884716234 304350098 246415333 19284040 916180780 980623094 348393450 901505810 623284201 500829533 819143773 42014158 645881527 878979520 512677573 683236672 795220208 598949710 345249565 641066961 305240401 219792471 510739600 118974789 674960146 388571641 957692427 365397677 540216825 960787713 319481754 116310333 948539900 989877269 201021438 370914335 27419587 234653717 486570815 839260514 359313323 756968546 395979044 177503462 464858800 210074765 598194068 867078323 249866002 405011733 262591848 391423601 578047799 737306780 435114911 3623495 652131206 110393349 97218519 316030817 998500670 229520690 611671959 893806855 566307672 750156175 842953745 823576587 133239275 96235787 774911057 389951055 872125673 634419190 847061221 78393698 262694580 278105164 312023001 118040119 249483345 29198461 249565056 291424398 821773727 740277398 884928640 192395340 603267150 212858127 104199467 606008236 686420075 76264318 425547124 978484537 62697139 614630528 81964748 332570640 483939623 458161998 692177863 804370824 457645355 763610770 197864394 771517980 741321840 494740862 312555916 519426020 46451707 73466670 747284213 864337454 485150432 839897014 316736988 992727052 368044167 875426843 96008720 767786357 561681002 401663108 381290667 95026412 38780781 639952366 689332211 709020683 686728944 797751684 32168192 433792857 729672710 149504442 667890151 703200894 589535497 705578952 130235574 396210062 92563083 559727669 874496735 620778916 857280622 565848987 927568441 319263459 106104313 950546153 829838158 126778540 162261529 510764866 420031681 578691421 726724331 657776884 707934515 132350654 288090952 766088817 687329499 948744605 287483965 571756926 786279581 429151652 998736124 741568848 335872107 642284625 952817973 644288525 312205490 147624918 457460935 409350604 963666358 484208209 443996277 439037683 758371079 973398263 167614030 797841383 732439547 223452991 952131317 410689058 374126027 908897821 323048465 42177008 786683603 688938921 8172162 446845855 522020972 315407012 546398044 320736036 241914891 477335282 278074000 194076603 472080254 751913050 428638571 452645259 766476209 415102353 624657760 611413107 87684236 783232748 973462575 960241462 530722968 806960064 558819923 913640009 839366181 743239502 353021002 897711110 380425043 153557163 639428789 923154533 503250227 119479586 340772447 78260258 802737280 889055390 492331480 552238006 284202285 329669162 334413906 796083763 405455653 951637850 312521407 842868003 731678526 760364208 933713060 16536556 180697280 171716685 158217447 710875209 20337826 197558273 518504880 389012811 339793074 908668233 620829579 287458014 143983562 559995043 900629468 731131416 420109868 738275094 122827019 169318412 81239609 324104779 687828493 794124563 922829014 590252618 361568649 606046920 698634163 118080124 852851217 183137498 953298384 534029575 679423146 473082982 61145501 718383331 478043159 399539953 634469265 129567717 883846855 881003673 735672557 303321809 291668764 392278415 798319702 654773930 900617312 511830472 586164398 920189203 180154295 121606608 730222344 896546642 34550596 48979702 498662927 626638216 154511672 891184991 363501090 630797309 862256465 73775016 151712320 979498425 834684071 968107604 39438704 342829809 426628276 300042569 574183757 174815798 755583515 494782561 852142027 110887199 852140429 210142781 273432343 280970283 176948782 278308794 419570334 525036840 569614561 621181821 618409015 612440855 915847521 907685831 412924676 505015582 822083077 982318809 887710778 955117998 496039525 154767988 394842468 355282543 243764621 51732545 254491805 393955181 58438181 870088351 86986684 108859483 221182572 496060433 298641821 785001946 98550963 753826474 547326378 658298430 712795334 104834619 210667136 10340008 938551617 284350980 270898099 896531857 941754501 623694702 228918029 288388974 646850340 799817988 11446603 874220504 758022103 660685390 213229641 668641609 474880612 213951996 395905358 436257292 642774046 380838436 693591982 855269910 49962462 451112928 472239687 107952162 141512813 767781537 963977847 844002353 74187210 296246224 426101466 65944723 924648070 622234627 217778522 155365224 813866046 402709979 317362002 571145732 893724093 925355529 561935281 563902127 460436414 304848534 30908368 986769057 107721598 533794992 913494662 744885789 576274343 793017200 339995272 704978744 761753480 479047293 238904529 221945327 521909179 816613412 700090813 464777936 396419706 569624000 713006934 537056539 150362903 877055126 121038691 652218660 471893715 740650094 813715741 879536370 357468039 353702542 970107835 558058933 891103918 124987426 328625199 911822899 268103991 227658939 835527456 11955139 25823933 406253793 506224459 535441699 67306652 477135601 26783055 63982599 771307295 625548616 12585527 870893675 978946066 617664567 594482847 742765882 659897295 909212721 271099417 382245782 125659670 57367087 797005431 381627229 209300474 918930091 574585428 740966790 163765489 675096245 122169783 166844614 918690916 788395029 976143426 461064536 280193242 11411253 522074890 7036424 841434791 390269123 40583071 511223591 948352088 407773874 832335857 578415687 964973797 485075889 14647366 288673176 418293778 362854855 589286725 935415502 541298088 229964012 946720041 231629123 214416200 989972854 106607536 12414957 888446710 828772050 234261800 539719558 929954112 284141437 939636152 42117537 499275086 988560306 268666735 247191754 668485816 889657881 194806514 602685638 583914415 190518499 314925458 31243768 808319482 120868734 562314480 336145126 460429923 602667750 693183716 479747131 112376247 866190524 803394689 657897359 792898899 270226820 131233586 671941682 21303101 322566548 7006714 7149920 814707859 464924371 748428204 772716108 259019837 678898655 977498226 220540763 28041240 500391245 256764518 988171292 592246404 387814834 488866290 728135187 385962451 606785674 377560902 704591805 679901483 645320501 10682979 911269836 88504523 243601844 206467465 138885190 69499281 697651359 51761042 682993134 400899305 60017351 314962878 509445782 177699423 868583559 414980730 520677541 378872735 129443499 177357833 889806031 197191041 922327908 958234751 161194501 677510701 190137352 175748135 327175386 739338465 942337194 877775836 682824038 859446219 811072633 24105781 936330294 436624646 997587399 11695710 481208541 949633121 873977576 18386229 38513012 407067591 562349649 673313996 719750695 193565965 625507767 60878073 298350734 115451901 218915524 276989284 988332334 207676381 904785085 561590614 571678539 75633930 353406311 529865303 741572918 319609080 786785998 656925775 434190712 20759852 311071547 751224726 306549325 864791049 113039410 414263226 353330644 538317350 52080108 402841585 41108092 980234813 535029679 472317097 604918471 969265214 928523176 663682393 109360799 429641784 187899213 842371763 228715001 22586292 260606816 755425009 646785951 683256767 150532173 732962568 871300279 913262982 525519230 486782181 366500269 83884646 884372317 771854678 591744930 219390726 160996807 940636684 682140283 171984465 350008150 259931013 411799863 975068223 559625934 234808504 966928149 96794028 629964750 431285226 548597107 793942300 970274022 283380126 44722680 235911149 224885277 5433465 661776681 843895101 572184298 473431635 914715617 440555101 769697044 744430642 793174743 17129016 537264809 40691309 422540460 69395301 546911886 564218668 903094692 174814636 552557160 138628396 768533604 771506676 456039991 93554704 707743501 160295102 158892844 26571085 951623880 542243219 549279424 230826178 181387421 550954123 810140183 947036146 71139724 628480303 854082637 334827453 999143015 565417658 703471336 439473521 411441621 297926355 333224908 242661625 411762016 841932251 540989366 233687354 79459886 800049518 843505044 587474774 314844375 844118955 235407325 391333452 230241307 628872803 48569981 892247320 581857859 9938371 85586249 145562039 444651635 629875777 458341272 783292415 316704043 460764349 778410942 538398068 934869267 610363852 44584134 585048423 358159187 261739403 758603144 108947165 723461742 6214591 971758114 333737386 932388717 884248675 480863226 725288075 949274638 148686817 373181274 919632819 37937624 160446987 352853457 934993186 784519088 214760095 756841733 510465489 276389765 79725019 541634424 164757884 173161109 542823421 692858803 542249328 387927716 362126054 991026047 742654721 949642037 66295334 971365208 227620048 991847258 90830873 143193942 123110411 821708040 611396179 877255191 192787427 982754399 540029402 367449537 420622807 975986226 999634314 879358002 931712623 314094082 624765036 6914764 424197631 523390291 876414659 949539009 353418124 866857869 521361383 667456343 396403962 55345833 638636726 650539794 821022452 268818060 471341583 947301092 169014698 80782661 762848045 641616795 62818391 778662687 401364765 643868985 381538607 988642769 439100362 870631212 606121086 689213770 22984796 197896828 277067004 341454891 461424896 643164918 689573436 981637619 33992694 557775297 895461679 659176404 954701342 630399575 979766797 280434029 794297988 385132283 856301859 751794644 825455036 806874639 167914793 484510517 781355473 279005236 80544622 859813204 139460678 570099613 90750148 428691026 906512796 491207318 240885601 525469219 710853427 187716022 749210386 478348150 910596262 484874364 798183018 191338970 562694545 157183867 199379279 716286947 20601390 501805449 751168967 390526799 648376629 558122171 585531537 923888379 501503632 290336000 442265173 774175466 619426691 680619599 533623940 860658357 625944913 234468055 428745856 177689957 985568238 985019523 484510748 937924120 693212716 456912312 747900053 701176111 223712521 264172203 713936081 242324118 232423353 307569009 513303085 948636724 604158153 781618085 634811620 160169577 371262305 544228765 244640674 177009661 788191019 206675514 748740720 908339842 433040164 117126928 487511588 248330454 877667666 865680246 344105623 267417593 748802752 236514155 682051289 867841318 842157094 690707166 242815190 374192221 818418161 263145644 260775657 391537147 952446943 741683735 636753213 911004141 521855242 952622584 380460918 593478501 476502653 398954056 348300043 928138206 149180827 172084728 647864709 183626537 240495879 507408019 949727904 959069879 871292584 724970693 172314407 196798802 678865058 340548436 472655936 897108864 83143288 868327218 280939342 778433273 697601696 203318961 572691381 573295197 571844877 866604727 263997628 83679273 865923379 686956342 265991772 789213965 294441079 446232923 300689411 368653049 185838463 493586968 111826264 996484444 13857199 763994600 316326890 167835183 720389196 451550392 807538309 758350411 882017009 184188817 1346983 47889802 404610250 25628406 293542204 925003718 861142645 363880893 171923081 599377278 903655277 260777623 991528666 90071988 155677999 140124583 907602707 284656105 358702967 385688843 320034832 278228533 364720683 383496014 775004778 240446610 759222507 43946588 150394046 406278663 704590499 837720835 376501404 673521123 267329810 208058435 142206838 13893455 207703246 5558156 867057425 379060674 634672941 951685089 181834037 467387663 712449595 262401531 758677325 499580945 722843930 300121369 568827080 671838065 824308296 89522935 52433828 229280469 730979693 310904227 533847016 88413847 538951570 81834442 44915130 113791715 406798857 878373448 133814304 901325418 165822356 205716715 218125496 823240527 646335709 492606700 412430764 38387074 953478774 170410534 882831520 810547087 211692599 305430489 560267149 337304455 386484864 726519327 476437448 71407736 417248458 918799114 406594855 482063349 778532523 821745697 430553858 911924351 873862621 459487935 286489597 596875419 795517075 301310328 749027621 965264912 175100434 483259256 364595829 467760851 514934919 745715651 281177411 241937142 994152263 174628914 691005839 445877118 809568091 643704620 174761925 447258530 736656517 565226389 977261401 331814804 164229379 182963479 502428899 437863919 65970392 747073838 414055936 770691667 820045927 904047466 41630357 394795253 350145935 251302722 508051724 830719055 531042156 181466651 583854781 23190126 872562784 556572779 888136362 268361339 669548544 76961588 575724153 367579991 531798799 10320772 568289817 157510262 203558861 951575184 398927098 719901180 834829419 641217968 432487678 18646291 269720808 903940464 749204068 548864115 718542736 991881455 178309140 704209972 219348865 240769011 300308684 101682494 616239472 443410193 898236163 69494783 157777385 947958373 500434305 168980709 655917638 137397706 173741630 839949466 199921486 457838126 444058585 953809818 17626680 837020654 62809157 906769366 407034813 647586167 713340413 143241651 167012003 830254742 984287361 337952663 703462876 520160826 596931099 782441250 969459848 981131580 705834582 796480015 871815449 493415064 715251772 355966263 837216114 539853135 374544973 829824448 671977957 33096185 968027264 321459167 751912971 337303806 487640004 587973727 684345546 340892744 354508009 850699315 454650727 72735599 64237 872439041 362695575 826974838 154891207 593648134 616663917 595112297 248203138 36967896 801906926 549608137 308054383 821749969 884095747 713811307 195573042 900063576 76381345 256336501 151711148 695002123 476969254 272497681 485405468 976277880 409184986 278162054 178490643 333142164 98165437 206689152 49087289 370834703 355010962 577277470 313779765 315841281 604372596 212981018 786296508 9282564 857306470 547100687 500471821 550670118 797427755 686347570 197607893 107598233 609975606 513828244 425664928 478223842 220519691 621880103 451372683 27933925 211299291 385379782 774084494 155020350 54008407 766634423 141736468 544322634 765951208 811715186 333602700 778133089 28162757 254950498 531357168 853531200 193726468 544436404 6092528 341597260 83760621 92848407 708729322 907391120 411034448 393673660 504150928 95176709 775379493 997797462 455227773 758783565 520377197 697629784 508521572 352249110 728548676 440301548 28419837 762761033 466034475 309721258 944511559 967313426 684455563 972183726 553224595 370565383 727294584 352843654 282677104 786818507 920703594 768486073 460165234 764994145 268957838 651775701 802285254 100573977 935399455 508516289 848045997 56898046 377004307 961168860 613567607 87566472 27786810 485561893 172351218 299904464 441243962 964919402 421333251 126101829 660682854 842671932 193813771 217506457 185698112 992271369 403611749 454665566 698738961 992699621 638007532 586729187 488587218 128041285 558839519 444832291 135251632 888827436 932155198 160822450 594158451 941214034 520030370 747633838 33516344 675837648 12680965 458191142 960412424 809771927 805069046 136253042 42732640 415093343 549075860 277064819 25996961 895430811 523052149 654960429 713406952 467481419 261236021 237933984 790799146 669049504 509628070 40917453 435968336 59376882 408800556 193212250 920782904 206925084 62824675 251788374 339982055 691492001 560676932 981719663 228985818 437318751 353363541 332380917 160374149 472668172 485510848 818173728 859365949 513523053 499880612 826482990 959269536 691993677 540080401 490536972 571980845 583708968 623794020 976434670 225796927 668835842 319225984 939528681 216727996 362685915 962884373 622387496 487732670 199735400 502426386 211932693 258951670 492294154 108897733 301794126 637093116 579717865 208860397 863732522 105713495 821514583 658170258 436691528 628021521 930171201 897150259 368042439 907158244 577759359 443426337 831994057 823336931 598616890 247423188 953747110 125741119 869399601 414108674 27767570 707331614 753678482 364738035 141327405 242380353 157254429 939860683 577760587 850184661 943680386 306826755 331695664 282965765 25857519 24726106 65337882 366527234 546729955 642961882 737391117 590372997 793624764 885935082 275505403 515268228 963213021 487308257 452842067 603532915 191635045 553884039 411825108 990497774 722276802 366454187 21138063 239980108 609037569 658757680 933913399 303314344 665169737 3407203 28133310 979824731 720692832 948350445 9550528 783757341 629016008 724346866 643040058 461505974 134129603 106172866 807322481 360603 465894659 761971923 276720160 28429652 413222518 170870314 848490511 82951645 331981842 728644888 513527110 2661801 503494497 224165949 692502543 254534662 288756783 213725634 336954272 112944050 499518251 954475574 290381912 38138004 84821952 89849281 328875453 1593341 648680026 431818647 277062921 334197128 781667150 953028115 280121231 725700596 676360099 139699816 380677834 670458646 244406451 312524009 40893469 24240098 184175076 42973214 528675652 330375029 940278878 946499506 82815140 758207845 103341281 46207340 754185707 959252963 219654572 211851361 331298931 155781860 851431661 527902622 55122355 196692498 540754437 502379740 255901646 850939266 774958704 379761227 173202366 678727918 985547611 873353198 594993698 449443107 575169832 527494404 145092113 291188591 928171038 105250437 347662820 427292482 205056191 63297592 643126511 697806918 764740386 156834826 568917936 195802797 840507172 767581805 167850054 782439362 522328758 389094174 616191262 587569514 28454897 182872242 744648540 216582000 553090645 103386219 988077363 867093043 554021782 488401736 893756320 13567680 696957121 106229576 688431954 376816475 166065406 594785738 417781166 632362119 464953606 175200964 712021772 539764069 673220666 508108141 405118896 774327931 166665114 476007453 394539378 929157948 132057468 914420994 566904984 671211661 587166544 410514263 557360224 65473739 55679980 67988667 129936740 612366656 586869196 165367943 418138370 935981247 968115821 862445077 983451460 182614034 835573290 421500161 672852651 368225760 68396931 750605569 535981400 59323367 41913097 612463905 563040255 751429490 114781479 743810950 153686492 362812657 846313493 504803341 853782481 846500878 306646641 879980575 627425412 388815651 716835277 741127785 347405872 539015225 803839711 167533495 237911282 349523413 763742141 74181566 819812965 628873133 955738863 340232981 719878844 940141126 554407811 135163113 747274069 30120422 920130168 781178146 607865985 515100916 831716924 854104400 91630051 131985037 728838427 150091657 499398202 595556915 23916946 259611685 684640260 368624044 81011662 628249463 647079174 791297553 957006623 217086949 376171471 205523467 649127799 834564978 390773167 90132834 633830436 517063148 617504840 994682095 749292529 965441310 18534211 406251412 624328591 349025954 969262333 223186275 362930208 196039190 406429377 292048930 102055125 46118344 9875584 245716611 789413314 643187647 81651958 300621441 29845550 514188122 815505678 842555731 866448929 855667818 846186867 118003320 572195395 964428173 704039997 104397227 364616806 14726162 609700939 690447544 233491666 592051823 113378771 388693077 375859068 495441540 127617105 385082908 267270639 728102756 55240384 548776194 259756278 147575072 747286918 632935688 954619537 653590942 247955007 726487347 145122340 522869695 204405059 427895390 144239168 880566524 413024152 855170444 595793904 722544905 617360807 821127402 927785251 334987147 181452714 758041568 163977256 510465619 527454130 871256193 322638575 172087622 47024799 747149662 836984627 246417382 902061787 354394307 668312951 73264718 352333296 307704527 321352318 987346433 426860215 78284356 351475950 220110775 530779469 761954261 673621661 692941428 310007477 998867836 749791392 515649254 322333498 512154567 430336590 448721398 115497427 791503454 609181046 362606432 554817459 228249946 179725127 392900842 502404491 631832139 149713982 122161588 503201937 751750305 689140977 212055945 153485684 282704426 454134122 388653642 569394477 946587107 283193711 402024874 365803469 527449557 560355754 32611419 530523961 128295873 809008002 953018849 210641088 254765381 931983365 985711262 570296671 836818435 853271039 285964912 41797167 482424629 170194930 217116355 777301707 823105785 124258055 179910005 722437506 813029383 366417806 942103466 947906143 736154423 399349804 801256880 370562162 150551049 49262482 530494159 669117178 562569649 610871439 390583888 146803419 760191859 475407139 863938298 291994336 624464752 766124388 254604343 3899452 843127228 788876993 53369378 779607623 903875810 235419489 15042058 530388735 905855750 856913740 843946785 582370874 903447677 500293710 731780469 549134456 380773426 293538130 242773280 253946374 6378430 974860165 227358728 76885738 729826507 961622346 120207664 164985934 325164669 881452625 991703506 868113448 266953090 618950423 805304811 674559144 378432935 638246512 184358555 851437672 523127967 701510401 568638810 429106194 673818688 175027066 425204431 706105498 514214109 836236775 99886693 506756598 880501212 888133518 907365390 754827412 542947937 881166359 423715299 43379647 700016924 974538276 706182112 984314745 735038148 550375036 169444414 154951091 808036917 68654462 830275504 959506632 677997420 899786602 812376397 757680958 398892851 50778323 466432185 342983880 561766439 191277813 978074900 29820651 279270138 572983359 98159139 845153977 564676366 278499832 997621377 474760262 373769218 626538534 969579685 919406802 434662944 36812931 911015953 641556624 528482308 405341622 563182758 677056900 83117674 433615860 353465556 214389662 538735995 734218321 344469163 434322539 809003318 883181576 920196231 280546511 829356852 634754962 780525434 19875452 233992703 23632073 622681433 217801052 737600058 190426254 481225632 694073023 783051263 865510147 359186709 418307459 512083246 580083258 607409367 460972120 206277900 628879049 612656274 959367135 723726187 86373870 981605400 666587039 609494369 420247018 641507270 591569171 738698413 989549581 497424311 205030624 963494968 546554675 267326714 238210633 921424021 166797698 394080590 447782174 607499562 825743882 206095279 114428483 908823916 700600259 305484645 55213333 747485851 988465113 856332378 359571540 432563920 299208239 634311837 369116494 357542508 60086362 736275124 160381944 675648252 207027286 303298789 717937611 648960592 174138468 123278953 317090971 301515219 574585344 309885362 785151518 44016899 772084732 574838626 398758178 269057334 970900043 18663957 501343331 861819233 198643608 945530234 233252923 707960711 81368766 875472305 451928415 53124452 657184734 537007079 224553977 44309478 7449385 944152304 632907004 888362474 816021226 992741836 161729830 180408192 839434768 21489697 192702546 320504281 897777506 965576610 806761893 824300321 321240465 797239079 810759182 428043935 783552699 224116044 526238617 76055691 517445952 685397326 664480421 852177285 97834775 373351466 58576296 498117824 285467000 11519099 323939016 423673070 663211479 610208545 907535401 529449257 288543704 433749138 727940459 641533673 41540108 717909726 145367485 969327839 475742908 432697437 115255224 124980384 184346090 621042106 528123266 468078127 493162793 646396038 421774883 476972154 277958204 729515060 871006005 554348632 508198466 159792881 409105226 309035282 131252803 339749251 668746122 721380100 167521462 984318053 387909989 906426279 981112371 484851571 264149398 667447201 771441607 20853439 102731335 35392146 20809264 916776463 423535257 701491697 326590230 235015673 554661636 851208661 832174505 402082150 612406532 889079042 330750423 206329692 828043652 21080659 362454018 983409679 547085889 1438212 269567878 446000092 412905773 812793688 744180339 354034498 694796353 462869199 75567704 367385900 338883312 291185843 585518526 194349695 599542278 405334736 12414119 96465048 614770150 809504940 384450369 632068596 845682250 844776256 250976153 577094869 199600614 100663380 899611355 717246220 884236654 263985295 453241582 689586116 352358861 23578831 109809983 668715406 427964783 25722267 435623190 375213847 481909151 127288158 684229322 651521412 305373632 675850032 378103652 197339454 743729343 882954125 86803692 485691972 192178414 142496900 313542861 546783072 720923471 979625149 304249080 297582239 930913851 71501561 942149783 172381668 618818605 30069973 909791056 519125235 640123264 353354916 811665721 141302096 389183596 906953570 397800821 142755363 605029135 714124507 118384375 65845489 220054303 572300677 962825595 55930339 861515507 292713004 96058702 25477761 632322975 592351655 102916548 728456863 882626383 756910303 149151213 247452549 259561735 754947832 520371506 194872497 37800280 456111483 18119510 443855150 620901374 866013591 350072438 305928152 588905099 5077135 30352334 17045703 880450096 346375609 53375672 475780396 149446851 684045217 848309611 254644310 573085240 467043913 149136545 435889200 723735409 438385319 179179442 518461079 822789746 139353195 726821360 711603068 690823270 585857154 452455698 786503971 655840892 110406166 532321787 290119394 168847529 194798125 420622878 558757471 230965238 792616137 676523002 139723584 214827971 555749088 15846838 966198933 314960896 1153803 339391203 942190818 739071940 956153086 299518716 259917960 794664302 244055510 137399912 521443787 86432611 814524258 587695395 434924166 332834797 748393612 743446029 909980494 391757057 684024704 870006291 389914795 554388261 336884127 86571964 794413325 809433202 668781423 89829137 274776638 109904822 122575167 829773521 916849345 401510255 536305547 469041071 194284344 865111404 518748008 250533623 325319654 296143974 107725925 625533988 76470701 211888137 989554177 634016518 962233799 201766913 393331296 75905336 231649024 91421307 222270454 344057788 840796364 921064565 645124225 103262582 400684931 201373090 129305122 808513657 898411026 210492835 522079539 527996925 737476719 21507990 513381105 582925975 902954228 262275656 244947751 489983977 809038154 976262828 751073199 895336140 997957193 557470601 353330517 748375653 400757583 137019244 867709484 521509563 516107818 254879634 796146720 247493618 719850148 942622976 785189385 969412418 130985104 419155553 416677410 713796647 227137356 130282569 890847606 762355422 751122828 65055286 622015663 272837754 517447472 778729178 5020812 282055462 500204381 804770301 305208211 481829415 628267293 836104473 734217006 615723585 790502169 134947158 753303422 68639343 522794730 462958405 421786567 173599254 512743784 899781966 239623247 246682603 138987329 302319456 79798984 607214618 262404011 709739768 513668170 768801146 708636882 2590239 932535481 291986233 137232671 295765500 245523565 188718595 837325002 898563782 56739579 286222019 354456158 707601724 532921727 780780268 377540357 322517383 745390264 669128148 150018722 440889330 802759040 197956251 695913612 190064125 551838153 920403297 995932390 797068437 240137825 618317305 995957230 19109437 173651166 808425149 505789397 868387940 600592210 618822222 182722116 757870769 48186464 465426795 867300510 352680990 661647266 435296593 249495058 739255708 361678186 462808879 163620066 746725716 509565047 858813865 837152488 814196449 902404526 422637632 25406982 710915396 176449456 207875461 510883286 606282044 881943063 472126067 843411269 851580463 556910141 406104210 485276391 929158153 205149907 61017036 808904296 68730967 930630539 393304193 492899711 289746485 411989112 550387522 74787777 764323624 694885247 752776463 522500562 772524301 12621823 822157614 950569414 909266359 282516084 643106921 532684314 575606350 632142076 724826759 757967046 433276009 886734344 173275622 255347043 700673872 722538814 990829388 471304076 140838944 516182611 137291151 512008207 898511872 974137295 744088754 356708962 521429587 795887398 781260051 649820192 291706833 976327928 462537091 670665935 129371295 948376138 67241981 532591526 925462331 565365644 543461002 964390894 154701507 271556370 885505780 317405843 900449146 685310153 362618904 710493888 755428023 327041962 24075291 341275541 675058120 951242445 915545064 852961687 387736733 148288493 988874721 531923535 140021122 182624747 369856731 763886481 914195206 712416046 6315489 415479546 280729461 288162302 618688597 36538107 299131711 417685606 827600884 840722420 290719115 703101155 19227914 359559709 946676116 589695227 604858120 16285558 951589173 638270926 545771304 832979716 31448146 846699650 381415652 935992586 220367585 596803589 954725773 769184634 136983839 717585247 609984978 480359161 892706500 366647396 382438489 177488237 722555547 236294516 366515194 950830359 272449753 876822677 913144788 784215923 98412506 456194871 914496751 385191885 407132604 318945868 690826341 477366772 226336713 168256881 637948735 450659340 793136622 70732725 669684773 677378439 992200819 15697460 213285927 147498372 751707057 855467865 459271319 64149757 560067846 635281343 784627454 263948169 263731708 817483570 160030559 778903151 961153737 447842807 6550466 725625486 723532984 365664957 651058400 608637261 580519780 972105531 1733590 619375347 912954436 557131623 607068279 265378611 58620299 723143931 213802575 787888948 934491105 279955082 858428088 516048108 912080417 892376961 11106837 621370287 35880213 99255345 645319432 263547975 548313998 449550694 431226766 710270623 96947090 743462665 794201489 109749803 397308492 553541063 389759233 351702009 589018594 48983343 426915806 313595748 766861464 323708920 364872079 926789795 761206609 304441763 442253959 365158343 740098727 243272962 972026753 10475614 156185848 517661352 539314634 347048251 301089156 970183799 876619211 534524094 22682649 468500528 23963436 794804768 824142720 113517540 200992224 986489898 287974196 753815071 820761004 498273053 909024277 278818769 882893841 757711541 587389114 517883633 844008883 517632848 27138343 765669247 911639959 734234614 547612354 605853329 269688643 708552215 260726853 114707663 797269181 477715912 213058520 105839989 619696442 566120945 969893872 368861501 115954533 269572157 822553682 13768205 170772594 788776510 357517998 263230844 813963105 811613867 581787597 800108950 530224539 345228515 597607601 765239372 6633244 473660878 33019571 386158435 191403546 456176502 635953908 479046060 716680464 499257283 716738738 893132474 10931630 462984584 406655591 426659146 699844918 145757364 295496539 19055180 331035567 534676772 185418497 711908046 305231480 644186576 971446756 430583323 183336874 209639489 657673855 104529854 484050683 530634071 292745887 436274543 19219052 214923749 46945770 598574181 186653701 133788177 93245620 513978655 288020343 545513426 326663958 431153539 446230755 13473522 697120821 902444008 989242560 148557245 112185933 224469642 262724155 818299161 412335020 847610118 958552507 591069116 206557774 876675690 707232760 646717680 218187765 266931483 300885568 880245341 477629217 35178063 535565825 316599359 408355958 53116422 698643896 31908970 398321860 465205010 340340242 619463200 820516801 173160582 256520588 559922409 839827290 768733225 713957860 702738978 377044889 621381493 280419959 499627140 537701882 134096703 997482641 872386052 669716343 980551636 384397722 987005189 224132440 516632137 117383981 956510271 348987995 382117663 213425690 826410755 754697310 122355084 396902954 795651499 168991305 546155840 679463154 219735725 974527166 278301502 369233253 683246430 492116053 430492763 330457536 175338086 762712811 514271856 810329569 273850554 573079558 397604410 521777870 735180102 235437341 726955579 570618053 411691361 438235394 158022727 677669086 448510321 244416981 906311123 667097950 639980357 993203989 44995446 408984490 624353873 453329092 807301893 356713316 499680780 344325518 947623222 5774110 353376504 937528571 790528483 593882127 364967307 632360142 962715086 177960543 460607912 57835683 191062923 875557905 746004500 102207820 621614039 270139033 796964645 239496505 901430388 569177956 183661470 994536620 191711713 210856457 8243700 527804603 885287322 590553043 7474069 394474305 667007080 724847276 465187354 997414582 957422051 40013612 910535717 964455655 153441483 496307688 585830953 759077006 248977306 89656327 958337233 23974422 306638490 596798942 317451328 204367495 988766883 746331077 632352010 461482314 26296629 463801387 721448146 926870366 263763974 601583765 946185600 100451485 18522710 740929267 542655926 651919127 806682576 516160408 363068061 403934373 934900865 880339535 687322866 346967234 519232986 187051743 736234579 204971680 270537707 857163536 25829608 645861462 836698196 943340967 65350589 905869273 303983361 216354481 892002697 865164935 633774298 333226452 941637528 966227866 516942773 606384061 306205974 226520075 136990213 572579707 718984232 195658498 815367115 14477283 668240830 719231069 771068636 234543378 694895992 973628200 923328763 442720896 92072975 776740243 534046573 865523602 293599341 977349980 130452541 995802791 960790899 239482124 284312573 657655263 823903490 669685141 545951339 742107801 248716063 520220012 860322706 151078765 416922118 430727835 835171878 990186870 109059903 811484382 182526682 674494627 72969544 17825646 694264722 258511884 334018556 775999541 524286525 912897115 655116175 228590508 799154799 519176434 891417999 640163696 707590352 283312867 354728632 244551447 526804206 673701606 909533449 490268489 587371500 63784088 501859682 183992720 471260301 980798714 881312004 784447951 483885217 547857956 562620918 198852480 480639757 341142646 326038498 146441722 376583713 357740582 828623032 203904116 952388992 281197920 130861892 91719409 560495984 237987189 177804147 609949856 768100302 935812304 557772105 958140436 351820914 239447148 470060503 207771426 829051133 123429119 682512675 684978922 93726197 690276826 912893851 118560358 694362092 909834962 324125071 711245907 794591985 138452424 501607991 851622239 536315727 783155118 812313470 730244678 55384852 88566451 982747223 65293500 915097182 284574349 330432947 165390706 974440703 880671702 840974709 366301495 131101824 422649597 912011828 732574635 443528025 576500836 785096595 569334592 732801564 769883079 729443494 57801408 579598335 157248166 929691795 818616935 895622572 662710543 280742777 528240095 827565669 370647221 884571763 154151078 833039258 387925930 557151827 828080733 552050327 887116460 422617395 139134034 212509286 206568642 678827815 820809472 478811792 781512559 435808022 888624204 529931520 384012349 32555699 542382724 411020634 707432449 546153311 635612924 571730722 825554457 753834627 854777801 142955671 301406295 197690108 150169499 202783259 649274343 158999786 329965798 209677794 892643109 32640634 765656486 694220053 831885989 367775722 456356231 340293400 652690740 183112174 139559656 289686682 882667885 753475026 220353856 320856413 401282797 355336341 876042853 475920427 620690946 215837356 483233653 715328949 202240575 258979760 573971099 652471742 34278552 491160932 254440238 401809782 552348021 237231264 536041632 836509163 635176686 752080477 836937224 608575825 855809729 700487657 476943634 285660547 54429502 545793295 351445852 556098183 63754800 511702380 731976202 368735893 960328472 222837435 713155199 701951170 129386226 63323958 907503940 855480280 978462579 757754591 265359359 105683465 439958003 244138656 366424546 970928159 814282849 473680652 28672084 236763747 470417923 601061816 750585618 518082299 218055190 613331006 145428838 750283779 90131406 617273739 56229031 540094379 332521629 821352476 187375654 5015721 896421099 107657284 311415643 581178557 612806135 939173132 538834509 805308970 436298630 6468679 733450889 39341779 299414222 421895548 766638003 64638938 310708881 937054764 131076078 57325625 306920006 563672527 593877660 357178081 162492512 356068678 779131023 766835178 106897257 639882034 303049025 820482702 579830584 847576545 570842729 672700081 871813332 389139524 253751208 437308065 157150410 542049080 464952444 746846711 197799673 525229869 566434036 883413882 85451232 301440208 939326512 477019643 265143988 426940391 275946287 310956951 480631577 50371679 697266449 389507600 963533123 581055086 705689522 368113743 681740610 431868598 74134398 33178646 301998861 432892845 904436904 280647491 99935815 769277030 604550643 162647914 179794346 355724058 290257223 731708802 486536067 607410979 321268735 492189235 973100860 451063260 317982805 626338380 978949688 706786075 601321984 487803417 232475387 324421326 959306235 180091473 734181544 291557758 91659615 145980098 983024197 548394196 813313636 797599687 953475853 257028463 864044518 701671056 19123761 210287602 228618144 499016332 556783418 52360608 528193240 433879685 989751870 466200563 534782364 216461398 181582667 645215892 786866248 30503766 689947455 344955828 551616822 843980392 308720569 866723609 751449668 607633510 760610629 362566398 402015759 227957386 159110426 973319326 6529884 31570453 471592530 145654909 236426991 506100347 623321744 142098092 152013372 156207045 754485385 389413961 740975503 308971312 758067473 347151001 442205692 871160256 321150179 817393891 597272205 90200584 209048333 818288362 252754744 326966275 76021241 738758085 491049642 49582310 132383209 349972627 860704449 591553849 769230915 259693758 89055097 953430211 38148319 499625722 220824614 180872101 698982443 238785593 763681291 19805034 232634822 126588785 288035785 346777247 716959728 717396868 317224011 315190944 494746550 851856105 476437969 925994999 200034714 530631982 304138801 681915417 961119759 735648222 501950494 732812053 202511043 301831966 569803228 838815107 902072491 23212321 753423776 783627375 563214813 419050494 470629630 528871771 215602362 717357404 546154 950020944 492514147 265917249 549400543 898677647 259825018 327780225 840349330 793515782 124972627 378001190 516960439 191358846 177342380 337529413 150293042 222915409 203105865 179929936 244746675 547234134 810239714 539461370 131397873 126849758 876959998 610675353 196633455 640397484 622341674 215771182 32035163 92169104 172177601 620471370 517576470 713806319 974496099 37039806 206197191 386557831 610897466 677600116 608458321 551251120 337148684 849238549 410011302 147093583 766782237 568901013 588550549 399458043 663117336 331520111 329548399 239447497 630029573 3718397 943149319 486801281 271847781 992984979 587197011 246948979 971228881 780771436 322457748 746884980 924011952 104151564 288648880 444429258 460930953 838619296 176509165 779814431 4642148 5858561 421636406 402967419 362949767 805297977 820232948 592323525 270543301 235739774 50962075 898162668 571838319 713535975 772635038 197606761 834812503 292348947 152218932 668138248 150593787 712977675 812003998 895177239 587409047 644746028 377848258 166975875 288753093 963329215 969378893 649126810 562315855 949869928 149166378 29703188 861793356 122945188 232009155 28507446 636386424 523839532 298934101 383384847 339116261 626913763 707683683 337480820 86513595 489046112 467084774 268597733 268512522 18401371 211824798 655225862 87650030 117684889 847602264 329169929 705010227 819529857 563598531 902804858 339653027 784551600 289707412 274662899 391005884 924358056 922107379 251460007 186049062 845423284 370858991 481318640 426842909 705438075 215660986 472877652 448509862 281639466 637098296 146574391 940159028 12317659 501153021 804743710 807765702 640016087 910264010 650958655 926558530 284648377 612879543 755360919 413672876 69547781 106248621 927275532 83208214 324220148 578693779 127831679 822477722 567525975 663412488 526282162 31994924 193713105 641036870 198998125 513160030 223446720 796945899 974111173 657688777 598306856 63603011 136481449 582857234 116020349 103175030 757571179 986173607 580853273 191009524 582396167 360378865 118397897 196330838 298956363 966733780 421129539 256753856 306399061 334111243 468863743 107077889 228811152 65129225 839191750 929267577 34549815 24716753 443671723 90632756 788615436 884993390 197157075 899229141 23117860 878722481 335310439 788258209 235874743 82131266 662216493 7230837 621048356 187491919 852402058 741815041 953102912 635868786 40343255 790247808 771117153 126848797 926615179 850657571 993329366 711495980 731151697 308059236 929986363 752959212 857422431 935122730 181573176 329346901 397801388 567810631 82082712 364213709 659360489 859120307 36481401 689529960 956472344 996804894 845591338 722708218 560056269 676927610 998615950 345953967 445509794 741504593 763611619 845707048 965296527 966878148 697499184 650996088 360667669 416781892 119275251 813584497 547379705 728169714 984492691 240274176 801677795 406179110 965439311 337669434 593090731 540513130 175811888 985340813 82188587 289022441 487312267 205480973 885996962 932707671 763169905 603347959 124096647 517945438 908822126 200998942 921210300 381253654 589476005 275448248 560080691 879789771 795967547 973451503 124166913 904132897 861608566 807946781 830537653 857584327 429033712 500436269 910794384 55112262 66808275 450209331 929926002 54709371 113880313 769829389 169607581 209235355 592430589 756881485 233301305 102469145 725198284 801012520 206721432 254533392 268790708 171006722 449268562 26281447 810083707 802128121 882481921 747221358 326399168 169438876 704094888 581704213 865526728 106239614 400237747 957469103 698800656 636980839 129835844 352490628 194644531 426530230 73169152 353707025 505776283 651899623 838974081 838957954 271221829 635457046 624968868 273041289 929850147 507194639 536678431 736074802 808346024 94727928 77687232 361814342 955143569 248941124 419146739 105298896 754626783 972519713 105905214 452600212 390934280 54481840 475599691 792473531 958782264 563770574 859843799 954321866 495477072 817391606 279383346 887836529 18582993 777370388 608375194 789550951 979776107 289744310 143681915 423093570 515183287 587441834 700866562 232644514 689437464 721182236 102861429 745318769 843755016 154245932 143507760 710639557 599333009 438356505 35205900 919777474 283243408 91444318 640595849 95042379 534863721 975156579 182618043 833379108 499622216 926321294 70711797 844242519 30846053 369244446 654415564 603118276 760165893 209226923 330020286 108784916 910727557 549111585 661117498 849065115 882428648 9838816 59252289 545986532 957665807 123949299 48689728 353053891 579235920 788464948 718387619 152339384 662428476 338595204 395160141 871714916 201050213 17097328 386629693 885099094 404562002 870218511 221901607 667823189 268344807 26844364 81539071 542090687 785112783 369717359 676065193 464318270 346569642 601172915 413972298 208090422 356700680 408308805 163363460 927896927 196675299 32084445 459255332 273505801 701867282 278247736 231176136 914919493 467405407 909472480 116652225 249638304 276397466 544665697 526960125 840551983 327937377 805796542 117532997 706691557 686467571 974385582 567479717 165510783 957462389 319987816 870420290 974015180 869667862 959326687 318061820 821504421 597972708 433841921 877173700 982000114 992783202 784055957 723247592 400850962 248411718 965824220 243006595 660232435 435016964 403722538 948125908 812383621 56055608 60204003 193986631 608674878 959044152 779284095 481891881 200036140 324440245 55073869 287748970 424716141 343766067 644586054 915396508 879668788 567796980 499584858 617233862 321322008 551212651 380488078 794894416 639627961 296312855 543869470 221411513 266889628 741190182 404236394 606033955 697514708 210863440 187867002 398949717 372192171 285632077 263580940 48300577 666998322 212370784 951392870 145663424 497476525 727303188 303050855 525474977 184843702 549388087 940276157 116236578 338856832 663471658 513636169 168781451 611646388 618923886 365963960 434115589 880315980 342358658 358292321 317180435 528079341 855355190 812413920 581209151 427198315 387848930 498266066 767817366 391386426 761884917 550672389 385751101 347377204 897874510 300926751 688087172 192905277 876075588 994902901 705704439 765061167 287733383 481391304 646914999 706504287 979822344 368741126 913630401 700707711 773834861 885764121 65871289 287990285 294908412 876820393 8073091 733642192 330103723 587065009 383452138 668763935 482761082 381506747 978474134 137962626 809725272 205372866 343587787 407260963 122555598 46136493 775968724 960653458 941469438 985941643 635643091 828638869 15929380 413251733 350931064 222119845 907137509 498527122 453718890 915050516 874648115 857549308 36731044 473778643 372275924 28491138 14052697 523315872 476755114 261381366 330507754 665540415 887136341 694366202 667044633 731516546 62797634 350293345 645501851 726571208 11622355 594806806 706976521 913865270 148111682 844167194 823248789 730131833 318574510 100576783 630904713 534566572 967195771 475479273 782459039 353893277 552041920 660309019 873794225 113818016 347625493 805381528 784932681 34228383 66718013 849786470 211840187 217967989 905537369 305263189 339568893 397380375 273312138 651668059 341956415 384122347 606422921 122264138 700851869 626628435 935762104 936689452 527506747 464955039 639521151 558495669 397849919 559138971 495777864 811237829 430522761 637979844 945595998 712982376 17509033 8915189 63832687 642465486 848808131 513074067 158989241 58353233 402205068 382075176 172006401 86843604 936574465 334824336 433163063 901187563 399833876 325597353 976244733 61301288 916884502 208108658 51744474 373034893 455951537 837935109 105293950 800041222 325288236 330554547 716234135 632826944 929351044 301447040 281232955 434676152 663093845 739795639 370595407 540348450 488862569 336499336 542871296 345896176 581089127 3897495 813274000 972388051 236012684 208122156 35789608 580020335 748039014 501892808 699338905 272307285 276960072 980745626 104607768 564152842 996729178 585975666 791606838 622752385 282465431 52536669 832572232 724553198 169028352 408015612 308226442 653510169 769642892 420481280 449160622 259417405 859637476 389418439 946651357 62401246 431729303 199888877 224142883 927427579 989617150 935404668 111768407 22047608 178952308 476378833 553603000 251928100 167828600 951711091 748567647 81030382 551427803 916210785 625182767 625031291 429934866 546651135 547486432 849760678 138182035 424826358 228591852 288052379 625793193 654409394 374106391 514708230 770151576 841419643 474862434 143325266 433582850 721009549 388073419 848736532 980362225 956322562 704821627 792187326 838978735 20672974 437459694 921565307 980759479 788882440 101635706 873154754 939432467 254335554 786201160 82533334 362231076 897013876 196520647 175552087 58924621 467807800 523294037 492704029 81027288 971458059 427111647 952641143 44588754 666721418 971520405 733868587 830872960 215979376 585136264 319404236 76209961 255263951 730689875 605826780 107326722 927815065 208057841 800639553 997433820 234225998 704824080 173575537 764141539 56728177 237846393 286322126 602551945 789247590 965175797 138785581 737408072 976599747 268675119 577193312 726797727 748412419 786810521 397788939 681913433 65209557 383651497 575054988 635530272 23708477 551380616 137076110 538177173 792626186 438872242 597471483 535099802 487861893 459005577 54819703 736750976 160470733 703485992 434578199 859892528 946004087 720179434 137169215 876778526 296505023 794868937 659949798 598991242 573388289 878224532 256971267 924395019 373866850 993729169 31511270 605752282 151885271 178475509 459786380 319409739 346588742 725394914 193489984 999365987 321872446 792286517 707606825 829499004 853103319 275468410 369307194 300351490 628833602 126459187 252033462 47631836 607213956 644035709 735811087 851365090 193706530 213967774 452750548 944123961 354752190 69731874 862823135 713213897 846678952 800781176 505180780 408694975 160134357 781276497 738368065 202195571 379654998 651998702 129189929 681124142 395884941 347288256 776440810 283329867 349590006 84052185 103870878 935384396 563781067 532337730 491644465 640741018 461851929 590975444 115820731 714866052 659536192 647642849 642671196 933113741 421634660 633835191 86868104 460797196 755051275 703015220 451055694 870947311 161665116 909610709 872271226 541171705 176724714 902469888 496055845 657050293 973767422 235371837 308081584 542514672 902623073 332419012 44320902 462953873 653058495 255894966 902069073 575837470 250327292 998528738 909169681 309022840 92556919 555282790 202823528 522596802 520161725 962640866 357967928 172444261 561646768 1282577 394530445 193257187 475979875 858333771 616091265 836625063 947452457 751770062 586401357 757775491 887751475 843794213 585013935 231950108 965097990 606999228 759785773 330497562 97884343 760034041 803917662 200220595 721434249 3745813 558701913 277825636 625677872 580732064 247049391 121191666 49079706 459977108 972522914 901268210 715772850 955729781 916602114 403375939 372817513 626792666 180680005 128568908 871684843 699269757 144851376 535616093 734174604 928466598 202750343 576228574 881343299 403591015 963332634 664998402 461238155 685417396 34908485 258245264 440446608 365291765 203856764 212980582 477343807 468302882 325468971 397137523 873583099 642019204 100847281 296599019 246847382 915235521 561448495 9090650 490719218 932312174 382389805 137049599 198134922 138386908 136150972 983601073 430053851 813501832 628736102 593785029 884521041 680233947 714736912 437803911 705086749 654064032 826571606 165076865 31905037 276584019 359026174 478554268 891704226 515092072 601554881 612792042 476087720 775429624 732352624 559354126 140302224 524066571 626397845 17169545 14498500 83803826 476694426 975544532 8307737 675056150 485405264 806120927 357764586 570068983 383271556 475391802 697677672 475428284 955273316 983955722 370995260 443431686 724837897 967305783 397475684 473352966 403011659 4683017 615459542 952216580 191743203 928559986 19977788 907944835 59095248 973129615 921585833 685995308 308300570 488107016 603084541 323770040 864507372 403887856 279191476 227016184 80226408 113518758 879094990 130558729 988637796 670411212 407486985 868886652 705001066 348447628 121831707 199091596 213474432 578866331 290728855 585870138 721961567 198646436 351583840 851429701 936796539 619088810 406173763 969218113 645538685 942523141 517533085 161614563 787197695 991494356 44317148 188610802 640656988 938274958 694597718 224853282 317358659 736711718 817547720 525118393 440366801 107901317 501939470 828538991 353313499 735115398 514156845 952725800 792601096 563899496 256333462 548944276 770182687 981246334 72924611 71883288 391254030 650351916 898937464 214519025 513100387 754528693 733148616 415260116 827048366 20968301 474346621 971130316 623869027 339646371 845597681 802082892 759314737 820666287 259927942 752050218 650209642 113927703 738895851 577282884 163366262 897919256 365407097 599233125 300737071 539623747 933252594 619682105 117036600 362036848 794499143 545265875 375277785 276350051 651715579 694236549 523102883 67794139 958421786 360821925 998571548 123260753 632978642 944724762 594213712 320214627 199343897 320953350 367569907 352305224 384280816 739593444 41198422 382944537 503281750 126637771 546682340 575785703 401280949 781021162 13205475 888381914 630144418 343398796 471892592 411554924 517759121 977957151 473253799 852150469 177825532 822420416 744666451 783676644 309628766 346283068 240056634 197444748 105307378 123464745 114240093 488553390 193018937 413702932 316844824 777018594 377247656 63157876 871542000 856807682 777713033 688930728 410591108 244955682 351045921 493372543 85092433 284983281 238492093 429557 282869005 311286872 136065903 334089607 788834021 572972216 829687428 67084326 911152650 398379734 859656574 782370328 41981401 560331681 580271131 125809485 370447322 937285830 766621126 958845986 772394676 282450511 496689605 949802788 875486497 416017407 200974135 869217940 990563924 637117534 4747214 353102728 348757714 883533519 94700962 833826536 875544732 477760897 38951869 580360161 344980277 427974061 439074159 686842854 239300372 703475533 362126380 323397573 422430265 927876499 566652867 883159302 98754459 127815988 398273277 969986410 989105654 175278402 59414639 161857372 47984946 586046346 778462246 671532548 768468980 966074236 112732601 388880000 619354535 174989301 90380427 570079771 424535546 128372508 800950289 204023678 96054989 879344938 836159601 687207510 263460441 606201425 552508945 457012625 866975641 12526229 599109235 390450184 508098363 385494482 50132328 88605021 416578721 105148910 274724599 297440158 26851303 471796139 366236471 795589460 620272336 781144001 516473645 581628969 618209507 725616684 980035640 186021855 872381834 148058537 805703046 62211326 498680109 804717134 519773346 149319684 963734923 261996846 300385380 259195296 94232778 358962504 747397012 119157043 379092132 826398764 367606194 756524314 576228671 86441952 807139630 445322681 429389743 776115695 997970055 673092145 818756301 86234377 559962367 745205868 523893560 795619403 824061382 4533973 344269504 723700393 95706075 75647231 360570752 930992066 404221638 49553464 998095654 32176372 944506403 689522101 976974965 745541859 291305432 178730161 435763423 473406694 912378886 676775562 11065970 610492408 446019987 889446730 865780360 401810715 992796137 824773039 878586817 282676013 466312789 839257137 416202739 388202433 641750255 897016652 991791775 688852355 937617390 694245109 445049038 166475396 803394194 474231437 425079642 516153736 32395837 829391363 348857686 921145846 327717331 640272722 607958535 210373198 940022746 583420766 176578728 578070648 933161930 622986152 225722042 916520543 323960305 799238971 623589719 457258930 464426328 531268286 48003703 496453832 542825392 239062738 776413913 153954323 546652458 718338986 305796167 36373184 438436758 365957469 458570824 211313268 240346178 969365831 823966076 433475706 396693548 140534353 459223587 854626506 711378701 641454684 556612424 369746377 853382286 589718664 129183507 797411348 856396314 444817616 888885062 763343599 661731039 768023686 204181792 849175278 961682276 537851911 95069041 31898190 36062577 734656718 428268113 659585602 632856203 486492192 256932076 764945551 707241122 453109629 479267716 451213254 545902819 23631064 812610673 38822893 947996862 239224542 528316402 518276530 152162931 20225128 74710164 176661276 96310759 26864458 917280130 112746680 38843991 259938749 714954718 9763348 836046672 256536358 977979028 883240252 104093910 82918028 977262029 324575270 380696297 965879577 414823247 259044233 515304137 968454575 835782521 834579240 313660380 66042949 849542591 515454696 977300419 426990553 684595997 136422326 408780792 807414141 383494128 989550589 59956272 667375080 542377422 738363260 351544511 817848524 138854496 743923515 828221003 714147367 7904283 973452126 391743892 785291229 845851021 622265969 293379998 674995439 719278696 256164221 734851145 353988223 962817208 675706976 97437217 999122145 290530933 189444313 558515896 687040446 644707981 222312404 517251716 839003211 452126352 918032517 675701362 65330457 995973809 420490694 320042702 750688089 483726130 545191830 902671779 136998583 246956116 908360420 140534894 615438091 407366526 642024038 269275519 88627122 332590259 81757016 718410085 746134982 102077186 258960700 372447447 434345896 902209080 817459603 114167260 669584920 431845547 848184708 64226576 87475566 884598302 583677390 332127326 165450369 175503297 546788783 809861651 986857418 300456672 863429588 329240511 65682085 788766072 990608609 967250841 387025482 351584558 830466525 712924371 276192322 220835671 448282991 561188764 469900428 877516700 25582445 131848575 60952772 608609377 783689915 901159193 106437228 409526334 229628774 163609340 628200468 804173331 170907291 36594159 462995689 16525613 243827743 680995489 547766877 740245553 649354685 946331890 654690156 605184839 680105831 416622143 746278109 690458370 480260574 303795786 798545450 544791113 531306258 68853776 539368367 140336320 477334754 163626648 845203845 381854827 721842710 187396170 311774890 179196898 316384684 289077229 664861190 224090236 905351702 327131644 412598524 338872998 933376937 873424423 512307526 685663485 388640871 715604357 539639144 586182416 18818157 617774232 370188204 436089491 386845704 342336314 459252019 290550230 957361516 40701678 545471725 355189488 102075520 141503919 844729993 675507628 431055546 570838832 693284103 442162731 492823623 368322008 606651420 894112515 736959838 547582592 978452423 158916892 307745396 500819376 336888085 907508743 161858893 828324635 513814847 835046952 857784127 381946421 166411638 826777075 571003221 599237093 631978412 707735056 439434698 925128510 233262505 795122571 565479316 371654721 745930755 323830391 827957284 526199793 843221838 805640899 202158285 11004292 278480951 16819025 969858816 226587528 640609188 268328441 723908098 961678448 113732460 666769916 723210546 364656353 613701517 128241900 210977234 628060526 341147887 905147678 777722627 721640882 606633842 721020755 997444735 260605317 596090804 695968171 325338713 537362347 300727399 86462420 570301279 771071414 525566083 783018698 611046895 960175060 123698441 50606387 445719952 666890917 2016442 664299775 62619873 328162872 124651135 53878736 357935736 620634644 220230736 481965196 263446312 275918217 999724789 801537754 920457757 282788505 945938054 981068837 172403677 490445575 201101257 206176387 47795991 13192882 950731168 210691428 436875229 968382265 368822206 36606357 620298021 395539830 858496189 702373291 790290032 813168976 834051308 573210485 822621962 908255474 404583799 737661290 844780709 662712346 971563621 855563603 559268837 710953285 899095020 112858576 790170014 298819964 719163168 365186109 925973606 624958658 82282189 226654141 628598354 763930381 947647476 760599928 521406796 861208482 788164933 666634157 426696353 711790283 63082089 683865356 173642984 125096802 541789718 595076056 201408064 531012507 600393787 936610062 477351957 29312362 307487619 677026907 451239114 558535058 317597126 29368575 814554928 480037850 181747196 782691829 575194060 600623669 20776076 304455719 508210549 854759932 770692156 663518473 989066554 428159459 797252240 506968299 935942623 430715713 977174278 104173281 220109246 547263734 331791071 502719442 798854182 461896098 829733780 656323740 793342672 858747705 118620313 273514438 345707967 925943201 479630299 532209894 303945082 838424146 843069700 545334757 342997057 960117414 770464480 171412960 691917362 695255545 106909067 506805828 757428908 469129686 687591172 421603509 286735673 906441975 574714475 722781869 607545807 596219498 869104251 926732026 475213803 486352074 868912313 443455363 701759337 912404013 470488005 343430961 971772779 670133802 480719120 777359593 18996609 135908434 577903909 993675862 931702316 535526047 733928497 146823393 974621526 922313242 414860961 934278243 456889209 347386956 304014121 2160566 458800034 577008177 389278726 609767784 825094000 641314921 98467684 508606727 584471051 926571020 908950392 627126051 718495251 386479779 766527325 157854888 246384348 999373165 809953379 193580340 674292246 387163977 235674831 807969831 117234536 320467988 216916373 460201592 391929941 90239433 540412771 482849491 923501076 693701609 93596623 181583816 148592742 747236982 53024695 503650130 907597472 563332396 253147736 741091113 597002337 71159618 375329749 784839327 910042692 189356858 376635316 263359145 611067336 169294256 138263449 666375511 705415286 560561487 472489163 445088091 655217071 824494460 798607099 469831120 302724811 99058310 671851285 881980296 62783233 993238425 428925616 103907836 57582625 57863342 878738543 874567589 980690199 454268998 441745167 528292390 480752860 477206039 534369864 785300146 460256675 652895382 517907522 982207625 396455975 467997566 156039624 751562273 241739071 683085464 203312045 885149133 389876399 477091527 424471624 960112475 923246309 718934116 862490676 519940781 291097157 356679961 17159368 279482928 360645011 533521949 404032807 647204943 14441755 868527041 191121935 169254448 432808065 84393895 296341093 597533569 70178251 726033506 981863654 40176197 562054222 98561324 290951490 827334988 957480695 510632435 464193164 659529616 569802079 532166753 31846074 340054858 205404904 31387746 442909311 698608009 399756262 816760671 822929110 309683549 393582370 959731617 224668320 112989763 715251442 782397564 262367303 825885009 867168407 183192911 695970406 871657406 163401981 287082362 828736547 97483408 360899404 80901798 867167075 966441323 87279922 557936507 792815512 261965772 287232339 816912134 490308519 154349718 576264879 16237720 811718729 929418411 601758833 301540158 114972863 780360060 518964880 481352435 251091822 935135827 368191747 981331532 685642889 481493061 754162574 494962304 108548740 690381647 807468087 440690579 87136076 191132111 377006699 264927600 75350536 970730473 719835199 618493 999791252 409930755 214278023 540058400 606334154 135589837 642595257 291487130 552292050 93115030 542227116 929102470 144504736 864990080 928981912 381208418 532062553 189958953 372101034 401104801 458272873 134198377 606923620 382532468 342315075 222135818 842471271 54999944 729639607 795018092 585376843 348724989 540261538 100549136 743332576 365197064 681393522 996971860 473380403 793155328 190707138 935875946 846905409 633550948 491440769 387362631 662191585 850247618 430757709 516872791 553002705 137997699 237172205 461220696 242120299 975363391 220019272 671705912 741863198 663657516 495386402 240120046 66183556 233927785 359281669 19518613 449399039 611613081 689522025 708750922 601099958 369482344 288421026 545313514 614148545 348222638 847953947 708530051 171037706 634328693 937021244 831736789 575655669 820700361 178473857 817891166 142348268 148512212 597272731 954734593 809698961 164532690 428528002 341749204 966956008 22665694 741629779 875653650 883002335 830999358 962685146 907102821 332315346 348609654 633448571 624877363 929904900 688205747 40514164 120164103 156948317 378445706 837648265 88275447 197659498 57088654 112401793 999719606 668544980 651822596 480775899 713683764 115259428 193004820 17026999 977319223 73410996 513034740 4514030 744450118 450116522 948591515 695574551 819548733 926692354 915367287 383782521 793374446 922949454 889373962 580893031 605433636 253062392 673211203 936108692 757969014 56569049 122437852 217428400 621800983 33036878 110175392 583025956 754730906 399456356 574076258 310824783 612826821 421559736 553015207 934098701 759361754 993960708 840539557 952295544 626533294 648747220 876206368 261418837 761045299 967426149 981898414 180024046 904395840 710512850 559903710 500340490 69428143 537227526 478074609 913023143 600569304 528394827 739438654 29332079 339053823 212678931 61025460 100547138 851305549 50921949 687610285 784382738 873764364 853000256 243655368 61134830 636511521 350967284 760155493 817398433 745570468 358471782 470216390 160341627 54963827 911618856 725492255 68306996 955633927 529009010 230447137 772183085 764185763 562056790 471940713 716463853 722076724 752543057 355507394 339905894 676692126 231547433 245412185 423304368 982467880 98955795 392185564 937598976 540311103 224162335 827103529 908493322 498297893 428897031 148517023 25925573 674299823 469583647 285651501 155103180 445534014 651958070 754030793 938305954 623316186 157555418 300624953 812315434 953243893 689970855 621090196 367468121 305810368 16551013 641975613 950102184 53708254 279070181 19016612 937355868 514325519 203845251 484487875 787079682 855368695 128931009 702832533 62879534 133360305 799912647 361182171 442935395 477417833 958228702 736695292 760475594 442444185 557656940 232657132 457146039 517194237 227334505 467376463 305907136 344252196 928138224 833128506 433256952 797333205 334004334 431074719 352484698 536601123 317612363 395060869 748156949 364089290 925204565 222610616 465138827 129525406 358218483 622530401 827327069 98304918 464802420 462030804 145191021 170503920 19219878 84032414 164478152 795869209 963173015 679197875 663143536 931592383 909709384 957839493 590669928 841924327 621654513 855691772 883800501 280434269 407789767 255409228 10675940 683246634 655985810 710549444 385968073 727169294 287895328 857962008 18375974 633293121 105724987 265530539 569264380 972993759 563133142 840982679 684109463 720051244 75455426 327170360 250162850 914796741 19318141 22160343 438996834 314420611 385601054 639191337 953236310 314649805 928584474 768229973 586861242 107945950 635150103 578745407 85296817 938026216 806289760 937264218 364346445 148226854 598432366 303176144 33039843 666769714 940125872 55492415 58415060 381244496 764075875 835707263 680321575 30641430 149948670 466824847 532804826 605605201 46889641 730116229 224455137 136883591 27838562 513503634 212704308 232536397 827257761 633677471 456617857 122694942 18742572 478749728 445400877 103912712 177983840 286941239 224634946 312938585 490529155 431344775 447730519 692789064 641008590 709711412 622095896 741612763 251645792 595783715 751321585 938771216 201265267 310556991 760575172 694736884 809266472 823276995 919464791 675737295 9716742 816251799 540279981 255260346 596017385 843037245 723817529 539300460 24731030 493613407 577174652 624714224 184177986 165075556 872390125 209202164 683681087 255963387 238759399 330742483 271969333 110966531 666192242 432529017 865381235 464938758 942821835 684575859 73961318 138597406 721768193 354303745 666815285 668891216 600499282 887881242 249933964 187691183 21616748 55430566 61189034 729456767 156960240 163562364 906424994 433948846 222324141 136709648 18574232 357920134 685527283 592910222 255546844 514986239 307122605 540433064 74118771 880619244 969497537 399771209 700528487 489032752 696135898 211967767 640479314 964277743 332040343 435155564 250353290 62626150 198139817 491839136 263839024 130189482 541931289 672329806 347333854 696301007 837504700 742345295 270844628 785291861 959447050 800084386 276457504 59703184 843934070 956532490 31792494 206138432 958169595 678329799 494472859 11173122 611286766 805521578 254768280 793537087 89238537 523673149 189713394 50925286 401279409 771685598 474819333 99997328 989333566 625008709 413522311 454350776 235726835 458865673 589681024 882975925 206895022 720300707 801592432 160330701 30491094 692665060 628352312 223651243 944744395 641289198 649898441 341095988 504643759 389725031 853016480 833420778 369371743 950635546 854224151 193639337 557880596 829425910 848871597 488649971 172508023 718098297 930628166 85703526 700109282 732473912 473720560 520209254 822461446 340193197 915691792 557975248 775427734 232290261 51325357 168731635 383101872 636781330 99014902 142832609 220467578 593774566 765393437 553545144 276796646 452996629 977589033 646118051 862240065 582873363 201139619 258223268 700205922 932291291 516761176 133093040 990271333 482773426 300702668 543921434 932350191 426360973 341105688 204574213 166624257 612099583 212712559 638566668 535091009 565695533 243799776 560580658 910173144 706070262 225018903 584933028 415794281 506496966 493940646 537365240 342596538 592322422 744952697 642436851 921863001 134508226 553788949 192701670 910177475 727253549 493106808 380247416 371571123 32188507 762536573 737913217 466865451 944600280 581942838 862212957 741711168 657223848 898347062 570397408 893850403 239171418 147296370 924117224 250882461 875512394 350972839 346853619 880378120 877084547 190254596 478403224 20602054 831458673 322455187 199972181 83680389 802708236 335093230 798317293 727758211 330970664 328316046 429171734 301578768 737167628 109226003 321082605 829245570 673776212 647529148 879063473 708835452 236237482 52058382 426040584 711777305 843720304 839755675 758439365 115615019 121928602 140782398 968745931 100742187 132802856 650943299 364469210 592241327 903209873 483508021 96976770 544779353 466288351 810532264 654723220 171829478 375728903 75730892 486714605 363707199 524538131 634270535 615904592 753481992 933909822 975124202 365592362 304796647 627371872 983322628 258744713 579404111 740723654 299785879 814187253 328806891 924996193 760664733 647775122 274014850 659933623 30322841 62467961 22436179 641348706 508910338 599456792 22829299 5616320 386082777 558955257 622104426 715336232 302796472 926070323 969317369 250438267 433262872 221555646 551411565 816581961 29385097 318403509 963694614 683002324 788784203 820238578 221383415 289028618 687250068 226590823 152774058 573955222 70838066 176920813 130969437 37917703 310209689 945655255 657129729 672003915 196991389 447896505 704068499 24950032 465643731 441054320 769434142 964648380 784327508 668522782 679729961 876438998 325011067 369099873 452229370 514416299 437107078 402915876 796051222 153200736 633898437 159958370 670216730 315460882 711961271 587077548 140943598 850208264 734403342 308884301 301753408 621699078 535031235 138895376 108363790 373004157 681307153 733101207 119447175 296526071 705625199 90443255 213603988 158639668 538945969 811738150 757602720 589581205 397257307 166747569 650121366 611273598 331101815 268539763 65895251 629761493 826020251 87693164 11510418 668038206 280511118 714890628 389432452 270644794 380292130 583539879 911853616 999749815 425994543 131103337 951386544 525966051 656585931 244400996 204038735 203422158 902387588 898926267 574593204 791663105 360094053 514101332 55194423 107153981 872086174 619165337 398146563 946572746 182214009 243620180 408633095 517892713 615323406 701609282 917990977 42262199 99268383 640188230 781156152 392142728 981500851 739994651 637850398 630199335 234911968 471422407 60984904 580498326 909666499 765842129 970237469 269695697 704775338 918534776 376337036 968316886 266323240 185324979 802464945 797297216 411281507 506085356 482765046 90388247 32511284 910038224 799772468 881872506 749544503 490637729 166051440 744202708 381210867 954283818 596923984 136703460 411691976 967456183 463651929 406746566 614797572 573528130 637268891 496413503 325235472 622733965 707807839 549631272 245347961 460713265 974895740 920984205 656787442 920160710 26179715 632116049 958481413 315260861 502699445 788282064 257929314 919385905 451078801 692627753 327106098 285768705 409292338 98655724 885999924 6363321 63904592 212865801 181675487 685938323 268008170 116806952 480790973 517635990 106595597 609146164 340791959 326167461 297027532 999269608 49350757 220477054 263194994 624604898 144311932 191530768 275385605 174028880 69224484 590970615 452691550 456624854 717818748 108822363 566884484 707532925 387795135 656976504 118374571 821420476 539286820 504684 929681601 168707839 265221493 639213250 350076310 762043822 166308974 901720451 912469024 440644647 728926001 283698165 927967972 838248083 283814811 652660853 739602925 981638634 350581922 231918768 371114962 639354148 219234829 615670145 397788746 391379991 733663860 882303072 17040495 623514799 489431655 539509371 403843038 314990074 630623922 138579948 636714067 552086386 840145427 715316232 978174735 410538607 592392389 98818389 474701882 74740286 991120456 635734523 455257214 447560811 227010120 428893890 87539994 203353606 827738648 957435921 374986114 546688931 404891382 573983614 245068837 328787804 281057451 897926346 856719674 461380651 168749915 488719443 717634692 791278046 32980590 616306262 948672997 272309468 776411886 457262357 781055502 184242189 80829062 123155087 416543940 802080067 833552640 464730708 926819038 158199928 53585189 222722687 972509529 851184010 367082311 914765427 15002981 263486931 935928699 640798260 448041843 64637993 609807439 356835050 548440286 903985654 626945808 372209410 577683652 152602913 242287092 381857665 523602270 99725939 260692320 676733263 67380738 523610664 805296002 47971373 128309734 201963583 293025684 515716409 598165649 602955024 543522945 603181242 626672173 813016216 538192311 337448160 754379590 484097039 920281804 274583836 524554637 719995426 431036575 191601543 515893114 794919688 402758658 801013772 747950802 313968678 562395528 660784521 79219318 863071557 124710364 310785394 651718523 807507589 441483058 194930959 370929248 121715505 530423524 912750469 86913155 778045560 551202563 980930519 719671267 502946962 370980925 987462765 238032892 449061927 744252999 413774480 829294613 381027185 450410550 893070636 518566849 731983264 899001566 326955128 259630827 922632507 956070481 393276302 172282581 700834242 538306541 857501926 649555604 364484763 191532384 272962337 512342660 913298137 552963790 379558243 711159892 620074867 549178059 772649927 768277515 558945075 722156348 455889901 250560894 828703907 254992766 133456539 236559898 920043685 294797454 459312658 5199351 558778548 240286340 840126391 242251692 272104695 574755032 410287903 81686424 189743469 272414414 828001901 863089459 562917487 309212715 770130896 256576834 309010985 600808588 191368404 244247899 408239092 405332368 259230447 93041357 6218045 566134486 739665590 412254462 968259947 224114911 387496103 118349716 63725817 326887036 517377469 144334019 819931346 705861913 286025762 177388469 769283603 336254159 431397034 857125010 338530671 539908085 141668472 194294551 831802553 540888465 837895976 994328879 762577024 991596026 124701398 930785728 927671354 423103297 34374467 290321626 677427842 550430776 355378256 369210304 190439771 228356742 956003786 189796856 978196970 399735530 303927371 671380185 680773649 825590336 67319827 451176698 276241053 611587211 176108848 485536529 54522459 385704142 843559795 79764232 516328433 795781385 522370499 944728919 809631461 747459631 905283145 963594278 698384198 124106831 604357845 156677506 154487777 232692984 413823907 445953354 445035848 394892268 692321521 335126365 522524793 478143759 297833864 480363173 998735765 971139472 852083621 417151938 831902132 983585081 622174322 943568967 784234563 681515956 324138104 568115780 669954163 9777007 143436789 741253237 326048443 227373741 122875008 374891156 26611803 704298473 348905192 433926892 690764085 824398911 183792459 419661481 660044651 820544248 837309056 821197163 153168053 947047233 935505153 21036609 227178162 74451568 648058171 880003946 327662405 138637430 473856390 800008949 195557272 747271136 64998735 901999596 661060381 171997989 998274186 808422646 794879930 292862700 149164107 370722271 359471510 273930831 136356571 323066616 552738151 935102615 611553433 807676524 720618128 735890940 832428773 684057565 814851324 46666418 776371528 120633240 868095917 838514110 367243964 631962350 349255794 127971687 111443135 878553755 525792843 63020639 795449182 444958872 2710238 389597759 463626070 409306408 227732926 335994521 797901160 598733863 895952882 500884072 413381752 65795800 153202219 138279205 151742941 215977592 727116793 412385019 949515192 542738863 6313982 36190175 966247482 580786192 125911768 101099048 468908592 843302010 866876426 171856716 637345057 204494746 967281319 675520679 102474317 891236573 705041386 118316412 316598527 265015303 794034015 989388480 967344066 215333426 706578373 726014206 758088998 484509145 622483904 528159657 524335050 122724602 307937123 576741382 291022743 652371266 403813027 824601747 590687422 967821943 977837260 296068145 662118486 867169928 86313809 629458526 177434001 240303044 984342120 714246252 513843713 921626159 14043551 169784631 246339514 29577155 65222319 813810989 440529957 74967167 267623124 921716533 482432259 674515771 242686771 716743919 569495079 533275548 59597961 480457923 870292816 345075861 25873097 486574357 899231207 468402176 584005413 821560880 423858156 29703246 361370835 127494005 949177664 81938364 624846535 140225502 450806466 465253515 598140932 116398918 366995354 143455980 714797813 897380677 450618044 894614687 51202958 945981196 408060512 712968139 583120862 994500773 624311278 354624883 103320134 754841432 655314996 316470814 630525854 628739741 511572813 666146195 214518742 812853129 27564931 283525462 964055442 500452744 87497672 625515525 187943496 15281552 368857337 5532336 986564789 448468055 757489404 397590399 826597992 183411644 368946305 459492944 863089538 955571439 947058346 84683911 168617334 62942662 845365372 339920819 85578797 144097842 792146045 245958720 857393908 400082667 401216891 314456739 454445268 850647450 380037991 426728808 536641930 190758231 284561777 681977380 585190024 891644260 430530889 747818056 873504737 171046717 241510287 394491456 990882487 723071367 124705995 662888056 903530840 465202955 159075835 245383818 673763974 753948040 380269259 912233732 47534130 383136649 49703591 995390419 282336374 177080885 122967674 356928154 984804128 251021999 180288991 752081785 956590822 361888183 55207059 154869958 700478584 791751039 851448382 339575876 845584067 927866573 833107066 752861220 400252560 700855907 669140541 287280889 542653331 467134535 316673113 659629715 137314640 298199822 170333099 930550164 325607604 502396210 490678681 292029535 306793816 329220313 413323721 505209292 748581729 694202790 142769922 169456839 277078859 703157833 143826806 883084714 723815312 155783253 476547433 501625042 279173179 294466046 805527848 172785730 927289379 530242575 563822742 245754947 539842127 998598026 770511952 49111500 634061672 978204206 716878637 56958487 626005609 938654253 236925260 23822909 644638844 799802254 792701823 635835140 633612232 210642115 73549171 491354905 152585046 615512448 252625424 867147957 513790308 809143187 230308754 26935544 185990975 304324060 11005312 829013383 850742725 726885994 468245630 897197159 265134543 824588911 885865279 94910368 325501111 33370287 186155323 761054495 805027355 153863183 507417763 629009936 563309387 949052300 717164651 699443237 18888503 419223819 605968305 596529845 340770501 584007224 175786453 336384333 989214202 691077293 887980473 740100094 966647734 513772103 87329077 373146028 423608820 313406146 685635677 34733180 225844343 306108346 45263054 272547456 717016338 515658415 451805890 881945637 46628104 705578720 794039937 605652288 928079473 218776107 16897396 785023173 141858175 780467797 243626996 142281803 987076474 709889614 976143406 579644268 23885588 826167405 985364643 93271784 881671344 699742526 719404915 865081946 357006861 153266532 754658158 888400779 436655577 628602771 713045428 559509583 189390124 982887732 617740311 718842634 329536975 796198715 896253560 335398796 554026411 922804975 923699011 798932608 126342564 292017190 479000869 136906848 257722143 790031705 600827241 894822278 489809145 690890941 195838293 763354834 31071936 144987394 471371759 465477550 712764106 692515478 639709117 351358543 862152257 620469733 32979963 550793192 958565333 178088116 605497352 624388916 467518108 931120581 964340766 911241597 371938639 495513052 963881910 657241985 428446463 279799755 299377418 65199226 974088866 592943107 85062222 73094670 256350091 439910624 220676879 20420091 798102007 765520247 650660318 407483155 216609772 869287695 624606539 287553428 884177366 175909243 217738500 526191461 199847089 39296100 675511773 740294644 489670412 66259593 694122582 952403866 259240175 230023719 771780044 675070161 54406253 743134320 11590636 678307056 605497064 101386555 605290598 26040718 273121001 404884982 850941779 127683260 961454726 24198739 752030032 16380670 184839020 854591477 305072587 341178117 673668428 62278691 546191262 786814929 25697304 881151303 934361464 124053158 109706384 846992536 76905168 319835837 484903371 607056524 276036728 728648790 830038534 573832545 290317606 72687153 469529874 126500890 669796765 782071234 13971010 783643836 724079614 545680752 479486033 213395318 638444761 382790551 92475371 13266592 26231396 362027703 773525909 70213882 14386702 575122063 702583666 248136070 190633783 879526834 648332214 393721360 838001053 968350402 673501830 262441657 972015552 916268184 764334011 919035398 112523613 446244863 959321385 87731914 112521663 784586347 269337155 608938486 248311791 334317008 370322550 993366493 582813877 664417069 974474741 644155139 96229500 363626387 920710206 698017985 499355778 600064549 453224652 209324910 455768083 750660582 380861089 511489190 320913131 181888723 610113341 952285455 349499426 932898634 130238156 465225569 278621935 647865973 721450021 669792076 798530323 826485030 818295420 815169154 16512684 992349051 912853726 308774236 101682813 766886427 483556202 656736266 744252827 993828572 451919799 297472931 424237522 193289884 971422772 574587744 413552445 550036796 541304189 706278888 490331792 409185892 283092439 393172161 630131118 235440962 694767088 991920157 466489367 178132327 188014361 904665072 15550172 547908204 915745194 988406527 740338995 172112632 44325484 881791391 606054015 792703125 757226780 129428555 456069422 480024843 392824953 269156864 503355711 285269270 858085833 881883541 409760312 743946334 638695699 903660964 789063745 461223010 575308322 593172366 55824935 197216541 616450261 622345300 639563619 923831564 485803735 689562448 438571398 931355896 199397854 53284832 802553599 473046856 213426033 938904694 520454564 881730424 5015293 727471346 524385341 834683795 733100114 277818387 889254267 176989079 375703161 140322396 617082155 836213324 488548623 375268411 375878049 742824062 569429781 892879061 793832009 92564731 11007218 70242000 263316063 226170825 70166151 78629368 123934144 942647667 802338802 78298128 717682597 291872881 806913929 953693422 451173252 104376685 175737692 229206632 866979665 864063914 102553544 475541244 68277676 714840135 570767326 953864174 610693475 155001935 265389274 486347954 554098531 680708553 849195796 329432663 790400669 213413277 741390268 775098350 572272955 2979636 933947384 969992563 854935975 126148673 590771663 449698582 787311338 449563368 960729291 289687627 716532465 274237063 937183122 951320853 895713536 144098715 704963766 127691498 766176181 926976871 788048861 850942052 946664423 485605520 199674170 860489718 364991817 987480076 753110987 777471220 191213639 419564318 326526415 513134751 230157129 479533518 881942103 144166664 879081966 784984601 26422379 336459131 222176607 637985124 59466934 989291663 371074233 781357926 883419523 369731343 120686373 801790531 287406670 149991757 83459977 458940191 75570959 718914615 737688230 888670421 720010797 368352367 641389876 311286103 183801401 318892072 27533904 249772456 256286539 104947101 637226881 1068842 172647153 711435862 32146526 771418459 636848309 236487361 408688565 501136474 621944929 661273554 580452201 296573730 494364581 487348600 641726367 161438004 649445636 121499660 652173053 965930970 150243588 608590200 228972834 770449582 669346673 359225878 931070608 419109134 520705239 360619380 790950773 945853084 76169269 102741967 248568014 237542614 554360853 321805598 470735365 184211833 969849655 816953805 162507813 622308990 146264009 676781481 27586309 570240713 956941417 760074229 903272581 722775107 374721748 771114295 477106234 635680743 225545131 843209091 422352066 106816624 808473966 676865872 83870571 270203614 407981572 49903050 364584783 460847547 885403792 408524060 602226551 270517045 109435013 547716347 172494263 305314324 446523559 171063517 552845549 183072867 836881370 330438338 204423928 542663136 192682150 526891665 403367925 804021008 543878110 963268639 840316125 50822436 79352798 647514921 806793066 68869266 734781428 454517909 786860682 207688363 348026345 428405671 991773900 464255473 256888001 468252287 281645704 179897571 750387687 172136987 518313413 753245448 466060175 459107645 839402740 349872048 864616477 335620505 461350607 200043847 106342819 69457136 708468198 655192998 338743246 254657251 10410418 216934990 836137350 153651860 294257085 843118698 128922251 431421988 49253225 676975791 749819505 387603821 989231720 736008669 302780160 501562108 380316303 268722658 17349280 517173349 475390329 596302735 352363669 944409924 365649989 399374473 938000539 45287372 969401937 31348584 853707033 624514557 238638771 952223110 978328516 964485789 178588992 5984631 80018768 909199473 778420435 806185477 874619066 503854212 312297070 616717420 589791668 161101960 358644682 507144206 567539347 685239318 982412688 760566817 133096035 605097933 976254538 217513656 171260676 834301966 369691892 971064891 594942421 615425128 440293557 551812771 179242952 534021106 85831804 321204559 668567653 520683993 993621057 353794258 57304185 425917287 795238130 995148181 352532803 780058493 130290855 403720694 664502130 98801213 444271110 324290244 49643646 165517576 374195217 629604933 820588722 864953264 752086831 971068500 854333773 977294573 374497409 865040973 350537868 116254644 434381055 960747761 86148975 740122720 743724906 183749334 800821192 237415768 953391349 206353559 173688912 277125935 426218900 843699303 2131570 582423780 270935163 497436134 638467383 112317345 648944528 524634984 173751796 14113737 639898034 739154125 201789010 432665518 301240815 139415722 844515046 215283666 757950289 70807599 386213535 611352469 119376392 875223892 627559306 532104434 722255372 614228237 575035390 129644288 56833783 417484333 754821452 582458334 109764593 881612280 266379149 505067895 319916385 422588396 532372017 5855227 998992772 131060489 857870286 183658527 695956868 891320253 995999796 685023851 548502658 26167672 74929016 455401825 887803045 52386937 252643231 987441313 289531263 216503892 150392921 186586302 711750996 49368026 129990247 262194680 477651745 808046231 160401681 47702321 312379511 230758136 652240256 583205858 494637543 115214621 51742736 166660852 730444015 910710894 231947032 957933002 334335559 19736413 456821920 253343719 906533280 60050339 110064879 957524094 327580474 37350508 889385945 636104895 759914054 504978201 698800729 211219234 813131643 585209513 292583686 74634022 18492677 908184846 119557692 783884205 680524610 39313363 349009772 422528173 29256427 219627572 208964688 514802975 649216590 904046110 630383119 470497894 324020847 775252309 370219474 382725583 849397392 400394990 930465250 456149164 172522762 420768091 593772008 152120148 107591909 725650533 169832968 594293776 632452157 532795661 501939276 849492110 469048168 114045495 726479225 343045233 995848151 957345926 239860334 912312566 697620364 968644976 788904510 679233055 330579138 550346366 88394115 698973205 679004877 549180683 422741027 530373027 703315203 576360599 610394140 469258441 956589310 288227093 333750441 556568108 678606465 582967594 39583810 551481194 838039820 338069259 709067716 466978395 249801269 470594685 427457285 315857356 440743322 145338254 963245659 789220804 244403579 123207020 279066344 35531663 553118796 532883375 139849465 56475740 133104733 863711762 637859384 211785561 683315568 289582190 974529052 257309678 601229132 231422384 653600758 317386731 986271474 122957360 742182577 512256707 245224674 494555621 233538939 278868468 981967396 335706416 664274884 920916369 475172002 845386224 100288733 809446866 399055688 801100005 971907006 461566731 223756443 678119771 987780934 395336006 133695484 145909153 54220072 10174000 177850050 157560360 792236204 409502262 447398150 925052085 664904541 58876989 594506577 37333116 379232220 543988707 332181547 930152318 124513423 320743365 316296158 921481700 377730073 255625333 806023932 149509638 303960344 338963642 313341932 922595080 799744501 397275178 486726180 424070704 23351294 535504054 7702744 234236558 562915398 226334215 870246415 336762386 721301286 271727001 703896120 332162662 956094828 427460032 830334786 930217542 325300260 750037674 625170746 264998657 432684548 862092841 847990768 256868206 100955607 133423473 868071641 931267292 456865707 39553690 261482498 855910589 133703087 122708926 894128815 273504588 35595269 163849684 605136500 647321651 71754478 526253785 910754246 219978043 769631533 527583963 477518198 857714434 589691566 968718133 214503203 167292967 121256582 219847094 305260378 370442934 401271384 603209967 554942774 540370592 543871311 770785074 757315613 758661207 117206501 903421338 985735718 708869740 174258259 346770209 344646995 435592255 528816094 532937636 149137594 739027452 150820133 970704202 245357203 140845556 817484554 769181222 455533723 695996407 196668507 123945950 600890810 572642578 187917856 703642939 421569153 131722534 338566439 388010103 398393983 578218655 492934170 416693696 414597046 430736806 581166547 2341901 521560596 5999406 656215356 444939932 137094978 858633619 576632093 25095558 329514636 392192751 144138974 661609787 103432694 586509018 669436896 567615039 819473614 177356566 648335671 977526668 491714805 432351066 452450533 100706920 468101107 451233896 54917153 660699805 995456940 316341365 660788154 126471489 525705193 443518668 352504304 493448667 70701870 920185018 835622157 608649714 138347410 335174504 815697229 874713818 95884967 329979968 269700394 199064380 523068820 501802466 764843289 169477837 556402612 404117530 434150291 63584477 365631616 527647631 954451794 216606462 529572179 629187420 317730872 167129548 218371527 795035862 47252210 955991850 230604045 423056132 286097411 508699977 925095977 249463087 270455898 261673849 776661023 694573451 675685439 472361289 494916224 505644057 441995112 551535879 932059480 426178271 433570478 482479394 77525957 223261303 178197536 325365581 893135564 445476316 580256222 442427562 468550169 414006933 180857811 60756337 617395618 782880629 733913563 532366493 849741510 191549774 888609943 499208663 582920078 152621860 305740116 887596852 457815135 878003561 894559834 983049500 866011592 154901407 898640550 928559423 77562845 740621897 642665773 493895814 282730342 33415964 234228752 789455504 269948111 962857189 261202536 334303272 442134772 339885238 583367793 326634808 458634780 214021478 97205095 379064991 978146831 878198961 14774183 774350314 631973675 131745816 519644812 27661835 771797447 351962844 666941980 320245725 733456189 686891561 703013061 336343315 438005714 290607270 707506844 507084403 673222358 126212385 171609171 991651117 583836128 578435583 319241459 14184133 81462431 323263037 1710680 116590124 969183045 241367724 185033054 990210137 960921760 176482505 970293354 3242558 174098010 88793225 43177356 678349106 744498117 48047253 244321776 370673632 42133004 916527763 218453731 924004178 798208951 249794881 137730740 290969258 980142540 748644551 105569341 815308896 25164440 666504814 533494439 867601322 583739454 993765528 805507531 680642027 829933230 137284139 86529329 551142019 703393825 500384954 508149695 722539753 780121705 187723235 387597030 809688944 880365075 610752324 776440669 726637196 841219816 915355305 341960905 971860615 237640628 547416629 540776926 31153846 272248029 692551884 368129802 152726962 657494964 873270855 235083736 474073557 884878867 534461687 91028243 715461375 237385718 899877730 905279672 527481191 455814737 175455532 353086443 626687295 705878434 975788072 363457916 696325798 339143500 268983144 143664436 606272516 993273094 929329509 136970541 969859668 494847358 980261475 707814093 540147763 253579479 375611554 514318006 82682809 71719231 998567845 79907423 276484735 558724673 574089111 655547681 865770117 292802240 425105779 254950726 649373592 872446217 916446651 287197425 985189920 725299755 980938141 943986410 703169533 914985073 31084686 373852213 266578868 458679040 211069867 605617959 164575593 837808942 582300385 200717777 917147944 99233232 270475621 663620397 588598564 881193568 582929173 808946294 32949304 575409622 396813878 54166240 925640702 736755589 903884968 851362064 737808855 739837858 283054457 24061637 146184318 921807005 437790403 297093543 316647849 717478594 441106997 123142058 17403253 259140932 577549176 656836734 785068823 680968523 734405580 505124501 208653892 63412430 118998534 440654632 848544910 645613973 839495588 358810576 827720138 538879324 183297705 127702896 719722374 969191744 252983605 824209845 913979298 293751307 143631556 205061524 118567390 436028434 961673090 302188887 1575990 37141130 25641200 937290431 593607388 234079553 816697841 435394818 189482135 949997263 658018443 795520967 292667445 121529028 582066965 573337129 896517692 926277494 46538045 926445512 879850004 623199557 932253189 294501597 621298254 280084041 658347426 244704092 236130575 729082265 643000523 602713188 873787852 92879548 94939298 129553715 71216765 622409571 545323783 123348299 240598538 963135905 768103339 541990232 344687055 301507106 486958297 435194593 1010780 277721521 938226857 732569096 960206631 264006646 342548207 728585520 710032669 127345107 950480785 881924029 901593019 55868228 691168319 540961762 792824282 210980136 968685737 924129364 141792127 404138014 904824854 756619609 286721059 180422948 502529858 665722386 260992183 510651578 996583865 622576800 563839095 636370814 437443826 351581720 831407545 71829718 237938421 622705349 323280915 261263429 434085434 111819654 61774627 214558529 955084723 415863852 494249037 506418960 925776295 6734960 757304943 902719319 532959125 923781458 885463380 690981859 839966496 366839640 219196194 153232012 812785464 670290469 773955298 586037176 120198124 435952808 246968629 789040886 537039971 543976353 488246522 212773050 710778765 253091198 354077303 828017364 73136591 609742592 762519553 567575721 763992733 846128025 319393345 763082626 863686533 44892055 690929283 640896574 314304019 478519693 474558443 234428261 87632273 575121559 749979283 622962644 183854055 153292237 271809257 627651953 646961741 696789200 96877077 87176030 376830168 294002959 494510711 458130017 556739003 344108138 554653978 768588588 15529001 859825090 592148567 789467177 982228854 898366161 937011522 689283676 904742799 623190218 198014469 843196375 197410844 95937539 924162979 135231429 707195576 524878691 825000863 652768302 65457958 556457622 446175466 278554054 171710022 9484764 827995797 169011097 596389090 357972758 420304896 395908427 929010358 769032876 177911522 375604285 19969272 780591826 707284368 954524478 912657429 86116247 596877581 271413127 820637880 36312875 762700244 785829057 883048832 941556176 782410031 823067819 426930434 37604517 943059960 119035231 870312844 449412956 429161852 547400288 243612007 510654922 242561577 511951303 978400764 510051894 80410245 104881135 160624883 925850934 349551337 148258390 675844181 508595852 966281920 802537904 793267169 474206043 871841325 267915734 758539528 628713773 320734516 420622169 515664730 243040108 347502479 94411988 795512926 698375743 576826392 555875043 683062421 86927892 535670366 867398391 11427523 539861191 8891998 601394480 359969746 958041564 639553352 125498484 786036267 252333731 165296014 405832142 51180325 433693652 236560702 624859055 627818133 761446553 662579826 84687459 421089420 634114999 477978326 779903008 379890639 192777117 914792594 646734746 888436806 731783789 431621102 740773132 51138138 844346191 716361322 188439499 625190954 950581923 773863454 135758240 607139407 601178529 427235112 216044551 796294499 157907748 947758854 468441034 844766038 208014065 432448766 786564855 14507500 215192311 19697759 178495053 951882789 664525082 644457129 447005750 440121977 982680161 38551850 411852557 946003967 73341230 157005431 562424469 856322617 70056395 629495504 748474862 795905811 757914955 291898329 538463062 766657045 463258089 493579607 501428277 554268333 304505998 748456863 125514371 670679513 437516811 767252332 176902397 132295312 992777061 114792363 968316283 38144545 163934034 528359661 872120458 522738564 743502330 423043884 131051933 151014836 756857921 186937240 680480409 662096721 475204552 113869903 35521789 801125704 587768304 283889050 750198716 361697198 301157221 133093063 890819807 921130225 390531636 119746116 690474689 367798999 797295928 156859646 328757971 496947392 43386151 87720961 54165861 143770554 904526809 257982802 937952878 224131769 866557260 476209402 759778677 632690655 905384431 719407268 365195821 289358098 904461433 531934223 344798935 325406782 629983701 58447199 745436553 917375103 357552263 841410569 910457663 559952116 58935503 136393444 801922453 821503317 415427372 929488609 24149920 209766245 206490492 791675488 682193615 196750274 222277585 54214327 77199073 406270031 179601028 398524040 8448076 838716809 131020034 444809890 950207848 903326062 596523633 479343046 636712086 399474052 732287501 205261119 539195401 536353175 881473228 412274525 860954735 920485695 953738815 633154182 980251092 402275280 85214945 734767444 905130576 639841498 949062379 194337925 260797026 9394438 237308061 68742849 407064937 661035929 912247323 649022312 631656498 188178938 80168878 83223060 285428536 63726627 765266171 529252105 4915230 62600135 668320007 267610707 411099169 351571217 988603347 505690020 211384703 193776624 952152921 61402991 261306958 637181089 568578687 253804967 215534391 480988992 845534292 374784350 504562113 29583150 614360294 208348007 4015588 906440322 595442149 404011839 295346735 324935987 300838423 598835985 183310880 334539555 468356773 4118855 2721123 71161237 14924580 46196028 314820283 356144120 522065295 538582051 133012184 556050226 725911616 971474500 104023556 407518329 328336557 129568537 482892834 618643064 590622715 616304346 637304366 348715789 111786788 502224205 874484320 338936319 378520760 388053410 593516878 841668219 479696663 370914384 200398505 125633135 808521679 351034214 404291697 37746080 861055129 486832162 921502783 330017324 158442671 673501051 844735113 688616612 446883980 554995930 211057481 931572569 706894890 410969057 596234335 801680073 586206185 138776376 249271826 448406837 982992690 456841013 608963969 799438219 257451783 180650686 571080262 743845385 302458872 143622562 97001070 950633190 843330362 824849540 437327205 417316740 981164062 975337122 923246949 793180413 39593998 720731335 657363661 532302825 700409732 622502934 547674218 133612855 740209250 3877898 751371991 423789071 728837019 786564641 345447940 582702733 929301163 486834430 391273213 871586720 491360322 419145369 738104648 126378219 343777536 662772079 330502367 927184636 493081609 100298180 225179197 620310456 483607276 572708992 441572339 477424776 131259178 475346399 543148297 781230513 857633243 366970990 976395179 513646405 929616598 548455780 392328658 533364186 864593931 947188804 629804508 792981019 967824646 70435498 881867486 993890134 891987213 223020462 187287120 858300425 799220065 793179259 590610586 461250721 953938309 400013145 558054839 397797541 107439259 483772099 814182869 448122814 581831251 411979425 81527661 329099752 166099457 971811955 95539427 969922322 501004979 510471856 909061038 549352707 419675957 391882894 298474966 934894449 256023259 65318608 823442252 865143542 324305280 503274017 769950350 211908706 593103338 332415679 259009895 764213453 604570540 98594899 410284659 887585717 15237493 382102716 241065913 322117330 129324356 712554167 71401810 587323945 668344290 460643529 139592788 122364686 410786046 388497765 126796312 852637209 475186761 102050842 573880121 41173674 285606698 88484240 652227192 75077766 342842729 904710298 666248675 780735521 532915494 990162381 270820335 160217367 178904941 871437859 816280130 394065925 68387638 449857330 585333223 31087469 126999119 66455553 388145907 371773771 627742396 976853477 479541702 288244347 993435948 547753309 912101109 911912014 181757516 335643198 503711930 253295781 53991582 918580739 717937587 861187929 800495432 545632894 701733091 470470600 514884430 133677448 897239404 33246512 863064035 707207936 166389250 747347627 925077737 304269531 558723726 178994363 999360013 18032166 38457740 566671004 675910966 506338605 41287395 341762894 185380110 831346514 992072176 244530133 580739573 166237206 688375183 748684809 414541534 597984 202443808 484279706 292929349 357370414 122216825 93894664 725231025 169869653 114992860 685101116 414548118 255224728 617676085 738833816 528320296 568340326 297860590 778533967 600128683 770213026 524859409 505871563 246196883 184311189 930004456 264473827 688374769 110746541 756899761 243848608 954210117 134579855 827103405 709680082 47827836 853405969 26886548 528544587 821449195 365625404 534071315 61082799 150393180 316946616 162917810 611039290 62350657 644827723 647926001 649846801 127242973 371224804 112575548 541923860 760882890 369179506 608624987 673526386 884404649 217535638 910762763 559087255 202715453 342795373 922138674 739731476 940155466 643132032 989259277 801050019 957831176 779482342 904820661 803371007 24341941 415059070 219398905 879253872 375867195 253108410 146663237 498588144 591301487 888743127 935268692 67848853 102519053 876807555 176423287 238486659 735703681 336029421 344950835 836978792 777529930 90683628 683626325 439959834 938177443 971174960 241910066 880675024 330011857 783358011 201012907 479688650 90470534 52405485 840007581 330775 404910380 470476690 886247388 652565603 404594509 737874996 710539582 819988265 87598580 695222090 56914135 54017541 888036243 372713117 720638918 376118022 362931650 288334572 191045170 446044370 601806157 825558010 102905113 895533739 972370833 486821252 107652349 69455134 444638886 641385093 627416238 121818123 68859 613716907 589742243 19973281 876031783 920271126 764558243 509127766 967120769 992334526 114190256 859509296 31370033 48657200 715533614 815250682 659981527 280108183 439062456 284957556 532232087 723651644 329291867 907407852 555037150 691032552 280064336 35494816 744122411 872882231 607158716 487986048 53137053 461417837 141741591 280325024 818772339 465278673 915259780 18758577 414110957 291074934 312048398 632388423 166011518 53656230 40041824 884004954 414835600 694795980 204445386 998143062 729594230 624691750 42283849 317278570 428854991 981248947 189714093 964231062 963907339 128390348 603398388 542285886 987059759 439289036 718822665 740325660 566860240 125347378 630911466 565198650 845925257 117282783 876045423 261830046 527262661 386453100 76220053 701762397 467942907 427040045 968955921 876482608 264718433 691630546 869513839 499762428 870538574 273206984 361885816 674708951 790705984 359148446 36517618 984744649 572113619 168165502 867468147 586727780 699468449 152772675 278964062 353562644 143636143 696711659 577350898 415428224 436004342 115312303 216505903 156830965 690228242 952313347 759329692 584139080 91500556 476256727 651113596 485224972 921517663 754318733 33149210 372428534 768970142 244033885 440023173 591398466 822248015 372034677 540223649 341028330 227218420 261943403 554657990 908167702 248086146 812173134 745834400 353564959 402572016 219550270 435357506 768799918 332109717 999100374 722309891 726053122 481946286 941276040 567672260 428874179 229979709 208157127 821935888 850446969 486304314 558322637 817576206 754590200 341091357 801080990 724978236 971383156 774677581 522332256 866938430 59423722 736496633 974109000 786224886 112230667 842426875 992863367 618659288 517987563 920755374 8834848 774341676 100080109 427140580 742682992 686095775 130849286 200274895 379297783 63962005 876400547 141859270 634739857 684711517 901138319 860649093 759139696 27543298 936401045 925626433 318830322 360909052 677765451 186126387 791916726 573690715 258820871 309066626 413506005 376463170 660733036 935586761 208185466 917975189 325266627 321764513 962254241 515285177 169831555 557778824 7823399 281460553 269292716 524624154 880079750 228854824 742314872 794048264 793313322 704665525 631603048 236285425 675383154 11606057 73494805 765512786 569904851 968637787 192919749 86342111 812907215 22367982 190241875 173756958 177150638 670429740 346442849 476263569 894818298 401016877 203246273 310644641 50261665 803346594 143325779 102703562 579303202 246040090 117389989 96001803 434873115 721834962 41763626 189490152 754153482 17149654 240000138 891379883 42836432 394375309 354756453 652525604 894612955 250421634 728750671 907494823 570422706 789490445 933825633 577297906 552916865 183253878 619701855 221450483 946440591 169344043 528637633 825824593 978165584 839279170 250271061 845499566 901484825 550707508 335162818 195967815 612619378 420556073 471239495 179741479 56546652 988705951 727822234 657268326 768529391 297792693 672454361 943921011 474469599 495766366 288245882 28588174 967197760 778925259 117082720 612701070 456467490 985542190 28697504 311754710 909898011 586431719 689595494 97889134 667807829 629667763 421353725 226789319 966724253 505546758 402739902 29885488 414541992 871503984 747286503 280661074 78051462 230056291 355439631 43752991 869824171 350154737 410918487 346279212 695973562 226939789 984154291 992183331 616218757 48324640 931900873 958814283 955650454 157730887 680041793 259578729 256012235 741905533 990862071 91892965 83894620 675255385 608342455 116147858 570915685 46651775 248459213 363489879 175356177 391861362 951175934 590839849 289292327 794271387 955832833 624779548 316527854 237589468 277893892 459297899 340612376 798834208 292504474 267216176 99940439 244550700 106506942 117574483 592034178 955918180 114187725 832567169 300192451 810054035 361697257 525296271 741202942 872617477 489582403 621827375 361066126 689076384 756426314 246191370 950134325 741835521 358950683 513666903 646407717 732634517 708659608 824311882 65006623 412249958 683403412 757764164 851754677 948623255 28647100 979619502 278909406 352053051 227394820 893070194 795897353 100955451 952236618 273250877 598578499 888309803 267220086 925942176 548276241 263509055 640648958 803063349 766007950 987387139 560972542 459682963 346348029 939298179 248850496 328741371 641050643 53219212 325597072 179486648 273142877 210793742 679982268 818975235 536917211 148584387 588999461 187328541 936695945 835927702 496816851 23109300 417458748 49552323 538277670 418866614 704592822 714686980 750121074 887620918 92356000 760944487 959665239 186381679 438501917 238096908 779569853 543176856 174593554 682325028 824259615 205344195 777345557 652866698 729587795 954837813 917892195 185186152 326583170 80821295 761043339 371132355 570205054 407081051 341724847 605884682 102642855 775281432 688916398 269497183 586833593 478542497 913424574 478816429 353208159 317118333 418850507 89483544 970357920 782741292 689793629 307412511 956427773 305555167 482037566 327943893 921922935 824340852 996222085 657244566 293736961 740407314 624154427 674791396 350313239 94851678 44526186 206976383 519660442 322536786 471986121 710026321 227035234 251162062 526234066 490065930 140728123 873983474 619922396 515071689 535583361 36539836 688640221 940942859 429892064 213432238 940551960 315342214 433921858 75705665 682782059 733919176 77183581 200453505 201044914 322812320 46824748 87583487 20249815 598249800 742764810 478579766 722363482 64174375 657895222 356377471 376999447 712898209 655945978 267798181 779964032 639132716 80290597 54858875 94894407 78377928 73061510 162238537 927099666 179640910 188857314 719524234 204793107 163567115 129677422 538767476 903896762 894163192 995463935 645107963 362898933 618417155 627279887 274141050 145449810 141874399 979034294 229682337 573508724 397012478 223485745 219958651 777119990 112332388 742349379 389313938 720582985 110331342 578512343 888358178 816262214 586984272 201631142 394407577 399436096 999148496 932790744 651661213 151496885 512208506 181665043 507847668 390406626 902927369 349867063 497242111 569992367 44781978 203910244 264911640 748523329 892465303 987039143 253339518 57907815 997302843 213789486 732651506 878550176 846431783 701514385 810729423 730716670 394924028 867378148 800737258 442518714 226267332 524289556 298651132 531941990 750006179 27070936 304521067 776326572 667556702 365812710 106414123 309161969 807685080 444450970 987625872 518592452 39876043 271638588 909129108 790670417 488853915 676923448 415323090 424999309 784705117 424805720 764272957 674121439 137657602 608752520 390121927 203383208 246743593 683853804 285348661 83063252 920808418 258700636 288082659 433025206 532613402 108739283 101309831 797813165 130056258 855124275 338415890 303447141 355439150 108992398 333897342 246270042 67447452 612400530 945334220 182352153 257195882 470007285 511946240 60595706 926104699 492221326 381881492 759622111 240425445 349822008 6389357 136719224 238297077 660789969 512761938 977139706 716668483 205420961 211527838 592726505 198239056 228136353 7310263 281544442 303497 760995770 224265532 686002895 543892531 308203166 174965403 963225773 951717998 517980389 594927902 481143743 806074569 543443290 590599152 319448609 272853134 796684481 530498865 275162158 894240103 228381169 474551067 792728698 286330351 414822676 115853649 336211825 969167438 361208080 849419827 692931641 312473896 107013099 24415187 294524715 826316719 332953536 678615244 7801224 377846904 183696293 668291 746477334 828060708 957157796 677627345 220796041 795017546 273971364 366506202 628533328 2241153 530125858 260805189 641954274 766211159 74512690 610328989 456517319 333523748 427256591 591002390 36095635 304153250 618780934 321955408 323513584 596940206 166133363 558547482 94535430 187650619 193809372 930986359 276856004 791355669 183713793 968144613 761632636 907386707 731050729 522062946 836489009 378819766 308175907 598503096 826659302 284447414 164999794 253900393 453182321 552002565 763234884 819306627 82232293 269821643 589905375 573733191 761689303 200726768 719694888 842384042 428758763 568739944 816817530 823024821 271652762 440657684 206308627 515394160 890722220 408252396 126116282 505894104 575489234 66469963 662357004 191277480 27848294 188330162 760736544 894843751 538113346 17218901 173522247 428556930 511633878 870804575 602915174 562870644 850288475 513015388 591807008 929164842 197196685 950355015 879151453 264471137 5313598 362857872 953362557 35268281 520871049 620605382 926236940 412283372 766062622 237383045 859448454 214100501 622841841 16544997 377553906 48798876 488608689 795107385 862264723 766985695 253008379 323571792 673284385 182586662 602046847 138157913 312551276 666096151 258059043 956017084 349539731 150786293 614335392 952516412 834895280 965574306 909367681 128315664 557261937 160519957 484916129 32131373 971254471 52043030 997187451 722522716 362615974 661784515 640937668 653196874 761068742 799662152 155424965 117894960 317309865 465892706 204505134 494482901 731137525 927655753 131417844 245780910 232221651 52303800 535233938 982295164 468957584 651960267 817843234 616797333 209359374 610905331 643133649 744776812 146298167 80692261 401814238 479101246 816387064 888102375 438707027 847403618 485215451 661396729 557626820 845537333 342660059 650174558 213177662 840217131 318009136 271219756 132644988 863911996 313655902 986937014 470209659 660471428 83147326 750948722 299055344 820787437 329631854 22059445 822608542 666652993 267486108 965628899 205176456 566090146 632926543 241677002 475116228 872552523 256522239 140583238 742621179 909293147 857184199 421245341 607124337 420269756 699212457 280898689 710984471 27561190 672172990 171215491 192575938 839732523 489764320 486844886 267498709 147058749 46364261 2012408 427760632 721252136 341257062 22798294 967792058 129206389 915190598 61727002 769536468 603024036 167373709 190500224 994742044 265388152 229015574 151288370 566748612 76048474 445340245 776495931 384660948 912969889 330768359 837714067 213098416 883684708 725435896 592194691 746475354 711576283 129021075 674398498 258757652 785358654 257748013 722450924 890716431 370236740 745816242 206743487 761301288 528798609 810575274 214442755 464250908 734324057 606857443 742006592 136042557 623355292 39947714 615338745 152733182 947828454 23712966 183490144 926329700 163123836 803771686 934431 389249926 602949206 153230539 682050280 268935531 289456948 942324379 41830212 379428952 393382451 736121634 895846145 205812521 39155573 490049173 339195799 490001030 655248491 100939656 373307585 811964831 305460622 41446525 654899351 961637828 863175662 73108650 337407876 561859481 717583066 955683814 911900142 878415125 127429633 746548585 930202607 961492673 91214285 827458955 939774366 411988874 842103991 216766610 242864373 390266191 121518590 791304810 771277907 391189198 288679350 507654431 601308655 858735778 214214488 680304098 937905381 282342186 586113218 405233158 491678836 231606158 50984942 647891188 783997844 592311012 797834640 791372202 286096236 360776964 978889756 574389294 60008172 941244306 66179289 890439912 166106353 782609119 735879733 247542551 337584041 212031580 579517452 590668711 412308834 754165838 692589701 180670563 823830485 594023960 883999013 564052735 613972911 135307013 771529258 757883765 627027959 606072893 792868791 10829310 610334605 950240088 229032010 927352404 189762258 601646857 963733015 585197484 99667756 652616304 102601539 229611455 787606908 337756248 672292565 53271363 173849211 609776552 891078193 247483003 479485572 90528338 270618106 33939636 130026099 794769184 881997012 779421335 781742019 194976522 778673365 667836513 708736375 482754070 491218553 677489410 267432421 677851735 889842959 816688480 889945657 662405038 458829284 518963315 755413537 201279003 524177997 362613089 808561473 619720279 895081752 950978089 982002586 422456550 308177621 206107485 580324392 511772360 320547021 710341265 40048741 821696667 844150834 767499183 378745250 817231099 345094012 391006193 495079063 923725568 791948178 433182042 785637358 934652243 393699990 362146701 595492761 326360207 902691619 975390715 245357318 832045933 279556834 584579551 887472916 359227410 11649248 949356925 884417450 352639591 626376208 141338501 793240148 103342039 429753916 193852192 188216092 540447311 160647273 985169262 180642018 119325526 649299041 750040928 210423372 122583387 28173014 416422153 229666863 711135453 207857563 693434199 718858900 71140862 657976573 139407950 419820367 22359857 112394182 221061030 731595210 908682333 343365407 730169008 159786631 742762333 127725512 135289685 820848233 426457200 659197913 294755003 801028240 263663943 34925516 812293210 204483147 868114467 194290201 891219357 155234752 647683654 712730770 51626047 724224393 839930824 690400549 219706532 156000108 860291430 317463023 679924605 756186505 507870840 456225116 534412533 943536124 576167085 451486304 939525273 726125127 653009425 367745286 112552301 496821638 509317470 841737367 213732377 178201303 194387438 403134612 282770528 626153523 435047075 107657749 146704637 333281618 429229782 826516688 468427868 137466895 364980844 610557763 197131320 579804977 460072161 409493834 900129407 627116981 768518881 142813526 498191741 578160064 690615088 274271124 616865727 931237440 205240546 380362480 460645020 642229145 174144147 617312336 511592782 335198766 857829960 975449614 363858254 694668177 373464949 409150315 612128040 80822976 41571243 894446296 733378003 339627167 951225617 944656996 716973458 830886050 999889121 674360923 151534976 27805038 302644333 845935881 433780096 363039432 525168141 247811631 338788555 777441951 468627216 963566770 731075817 864109894 580204532 951053653 177943205 344530019 956642939 236814602 404424239 995998986 330753755 757723880 271377740 585950473 215678190 530052315 979397895 904499818 798436867 253842360 69919171 721126965 262882291 670621027 540304917 495567323 407803940 78318031 922487007 518647850 478336234 679270896 926951454 225080703 28967204 694769590 546623928 119383872 408395967 91109448 807677537 285448117 336659012 95698291 524454074 516327892 63092065 889354868 6466196 282038900 99456788 207811171 962603500 259705860 722390708 544531346 362776213 99914599 79412626 250588844 312367794 616779810 591166839 344399672 907192656 401807607 455367870 878910066 901959951 185164864 727917630 69354536 898664320 187063016 289889504 58719760 907859187 178961943 166964233 681876686 879338406 742419993 757502711 181012816 836377011 62957909 371044074 476500373 954270424 466275036 614327244 674414540 299148185 905541823 535279497 415510204 111228023 231612716 454626740 805042470 785528282 961196577 233174744 116801056 602847805 313978003 247036030 589575854 283244589 205761349 466318358 327935046 752437052 525957350 746673486 777760659 726149870 789618876 579701180 761513180 475323751 711225210 678190034 954149197 860836776 457159317 944512309 547685660 500763755 597476995 135536741 225928346 420277874 466609604 922318512 341097944 610447978 14073059 67791370 399075040 95731365 457320020 33055462 967027916 70000823 356124126 481587224 801601597 944899125 4213623 125573591 929656428 221900459 688118838 43084259 431906056 524644673 242308703 581833240 50439376 997751267 441231628 830084075 855786434 884575169 85671518 306069938 622919499 955014159 29975475 36325962 57710832 904692180 649770477 460799805 934327428 145388154 682453894 823512516 202128373 787501743 941835192 39903625 196930696 704011299 154373887 419118012 20642436 194689560 198713470 232338958 161140029 591539978 521839026 362379930 802387065 641207961 719739379 715948835 575318734 430837523 856351682 146969204 643121793 288759299 566755821 996460867 911953004 458813508 560614382 33565100 158602069 825074950 550602999 487299482 755678122 19214685 178459546 583494447 392372834 838793746 215074129 399034454 168269874 608228921 735288570 51320435 627082744 914304825 256063890 277213029 895059636 938073391 747945108 253893737 839341512 240988329 137621899 585441502 123887869 606921467 266467602 599015518 799708049 236753613 292750870 257191169 202233981 334161091 777350338 570123196 586336471 900449526 70576598 926218249 860911082 779442228 27658519 214876697 850460753 478842472 879325687 30194183 936422777 840122175 599954878 572393095 549275944 160617330 997453177 911006317 639453223 4761509 713919327 137653479 599840995 349056026 962051452 805241208 636018776 396184938 572041175 514257581 461945042 709743870 87825854 730070308 216836827 214373139 612639124 347901309 98438412 7082499 618936384 273475414 514973967 837503338 600544331 615005232 694143269 269286052 467132988 599544733 604217424 973517430 798087669 934571394 565938204 281911361 109596362 953014356 933002273 470040579 329395067 148091341 446477731 730115492 80760885 80115162 451024810 51772715 517641284 151922806 482921004 672730557 681616695 414989161 110653375 294379237 687513371 396974618 648898948 935660791 53404729 458820903 205162573 955394834 501331796 886226427 529767451 735140859 536376123 381282718 840910400 179950963 603676058 819768124 409241744 518382522 952755097 838031481 825289152 613867798 97800348 928010106 838372355 701786277 61516986 369013358 931655171 510339304 564580837 383145688 191857288 612913419 613659636 593010588 467733273 163449958 743892247 559340309 491348834 534669436 246598490 754652305 899302130 170562447 189866906 125060803 552842930 89611826 326305270 970223078 182640865 629291013 342180315 221302315 807563156 762358905 841587436 747636286 658662477 240533734 864869146 625789172 927732760 345986662 323763292 422683987 735809 909109610 879752222 939478407 184722972 969572224 962569750 53338536 922449037 634221486 871830895 116324986 867426706 878773756 496275854 390686690 206172768 804719990 20207931 624673263 5779550 234650070 852769276 874069287 116961883 293140375 98420268 446188754 794433631 990434568 866922633 488539366 681907484 790814356 667507300 662518229 14802851 899253761 698505962 621981191 930516308 663332480 125869828 370992059 380633720 763922113 199600545 694098142 739797082 19223330 103129162 145836056 402480936 116523664 253878277 922008882 37984342 423782728 125493070 978330548 553556052 386116699 573736596 284824381 283106498 307823133 100310019 438473671 84063230 787675902 625312446 408490626 814125188 13718605 842226403 193366602 884767326 451149530 849199930 829144331 691617165 986807574 845590830 525555026 890004107 654325228 736691054 222268395 433581532 979816258 492086650 466225273 835968429 717595775 882604815 545896724 469201656 240339144 297052656 71936123 768539167 99208741 480812656 862361813 185451379 207166716 623211665 214094419 788711168 146432776 720363376 184691030 65238957 603606813 207810075 607608720 395431421 157678306 265670493 673757110 733815682 339791601 311165209 965113872 113734051 133159827 478406652 326934479 294432650 230352088 895776584 826830495 680614776 525345870 627463605 651139351 162867960 434741674 746222048 762223929 125438662 651827142 8551159 239607535 504709007 932339331 598396151 823088662 37159794 936377075 370337295 89557 601495373 898263033 530942157 893085643 330452472 724176486 857676221 17981352 233032133 651575726 879701618 330663051 389443498 857218677 246613128 278103317 382149856 609194764 255399034 424852978 261750473 817242506 391593464 36943571 472682463 984338237 17279805 56595975 475231708 743960893 883937437 909283037 625231505 267141320 495998011 759042966 141657095 369340006 802686598 185004870 561309436 638851702 392984828 366549424 584382248 674848624 661460173 532501744 941456340 117872618 266270833 932292335 74450756 156770836 438151204 593157861 7245106 751893774 182343078 813588440 756191527 86543345 897316247 81889909 246548530 511746170 344258435 71633333 769922196 54234084 906690786 709817231 863137893 649375663 51520755 81203774 725783398 937735061 959671 29620278 209698486 931482659 107327017 891080783 245842414 86185920 80471797 215193888 358966746 409919610 754075039 188331489 94716348 38546978 91505898 124706311 246927836 708406452 338803786 502078201 261402444 781801298 868591761 421987534 842022341 13873473 602668554 214480418 178867740 914231008 238668180 468091125 576551249 109247931 619365062 289935774 852946978 637102849 302221183 529490583 476060166 140431232 275201549 968935047 932162860 29523550 926274361 434311881 422295436 718040865 63344923 234468302 746001724 393077438 977605666 752396674 791586480 191870492 514452874 654786724 589703714 346174196 619858569 917526622 509160127 956914246 332863312 105663536 188503529 480000536 757533975 71834546 88588324 653679673 415864173 380895994 281382390 898627443 152980080 465605124 133374262 128878959 454717580 662245732 609706818 631753296 866806258 626732530 670947654 889574989 120051144 229455309 111581253 754933862 697900965 8364622 335500012 119854994 460988693 314322512 156036894 675060966 64569709 269437005 948778975 465018881 913397164 589005881 993706336 815117227 771631712 969735033 651240398 497729834 46365821 113847417 360333484 495398793 864704011 253083683 153477084 280275901 332466233 317754309 281529601 850386062 321443123 226201162 657945347 899551863 634751741 430702790 535799393 952903315 440318856 712300253 585604968 64396012 745879086 901846213 192909441 147803877 795792911 237691237 933890823 173927364 69961855 267201894 727612846 492110054 757580442 928270590 531409435 519383270 412516366 993700202 895430182 287472233 45771893 783487537 294851123 709680386 830427878 316245952 316916826 27594412 703003269 679674747 606959664 460540664 441193092 974722341 976922405 263869326 9574875 413706684 880950470 800738381 418160446 34040804 273355734 284124352 634848349 161305077 617690094 900527042 597524858 862405538 623912090 462810329 518595313 402058272 197311042 357185613 891391620 997640960 310122099 458521591 979067062 794864017 723377947 828703401 685591281 384713610 684904550 73969742 271601968 449431041 676466850 706045417 923943666 770763896 457043488 315176864 920807391 760096232 966163224 550292937 936367328 177384910 53685304 242957194 597420696 136456180 660665800 22916303 651850214 512051256 484336939 690591178 625186958 217925185 807686727 710074359 707741275 871855472 802153881 396372687 822383475 723009856 180542655 518021399 421600278 440619457 199960485 527149573 154473827 909890772 319044192 82666884 868577840 846446973 497987347 800673137 32725217 796930937 849122886 361572436 877298513 884669023 76783351 425901905 968519515 819366610 94556414 395100802 372084601 711464533 894835715 532246856 406202903 63045527 207080546 18717517 772203714 647320179 793690059 601033903 588470477 625096566 749268490 921563497 600975491 570295061 860611940 607909952 663552217 489660598 754203885 396993813 484830375 488547532 995204416 539993748 34428323 909219006 932210978 796215493 547242201 636296016 609873558 983508907 331405690 439643771 618315363 295955017 429645074 384443775 330234248 425571692 2632026 866776234 77136504 333428475 545994633 586280964 338623761 33056350 155653545 830579335 563688950 529588377 668384772 505934374 94476681 777647543 443476543 353269703 319208534 961073726 976660980 10882461 74506788 648263600 65151580 463607963 669028864 918702551 233792320 168018452 783209679 813588247 632859570 889302936 916153402 946054328 684606743 469649564 756113155 793789334 279861668 686813180 642443935 233735938 647389755 532477615 387119446 681819789 206984808 958205641 336790314 786721909 982982303 333449993 324999963 831222108 899926668 206298048 73271391 176792188 816051526 987756015 612477711 130603821 548765180 844854259 266936028 561053939 391647328 568959338 72100469 317829686 756079876 311621969 258507077 122340421 919663261 256862868 193930723 650995006 878997856 356484554 446925351 722768610 5165812 375217937 334027182 612988598 941854463 665919557 278781060 386985429 578882389 244043613 50914758 177715376 689931744 251899931 687856463 773516038 139034887 791813482 633164850 398229918 122459067 850574545 584723703 146331302 301653403 118165692 674883802 100905134 872964552 857668177 377477170 807939335 421592418 967102790 433367266 100900133 300108292 495896922 262251333 765788809 54442357 538058982 55426760 316939692 580024746 284566306 241889384 536700686 300894914 301231583 396662366 784230734 573994231 212286701 948082198 819343662 215032920 572072042 911340599 631640968 989419654 213643218 110986820 702598451 995065134 93306560 197501517 213591482 947459449 461718724 360789310 868556306 150461638 770074279 829309882 449102918 119158577 561790177 69270944 837158618 355214199 319938714 318137475 420067283 819690415 831478608 22478381 470471738 544976102 16958711 417169499 53147160 339156470 682748962 582849424 399623263 945075638 562240601 443140337 735946660 364306114 948709786 825979138 240587089 813354649 587022638 880501036 660104050 952488525 667379614 314842348 785513118 667868881 278539409 123821297 529098402 604833710 704631520 130116471 12208691 403735341 747060189 860869418 219593470 894385349 978859148 159469800 479194543 566114 133196781 16452957 794464589 427254461 887552992 649222418 748724372 412463766 797870092 610472992 974831465 701276326 808331602 311420317 181150360 483876934 272738797 822125321 198271501 267322113 493672327 84212967 18379794 652811463 451355991 985797300 649018024 966103242 441363773 980949712 928548908 34968217 544740931 137492351 456309533 272820174 944957970 745515607 718019185 526316251 694551835 428103782 242040247 358987549 373524604 669623822 170508760 764228220 657911215 591867967 910844681 500196992 3750807 301009228 584395959 324227191 565457594 102957926 27295060 186453420 123146207 40207823 715675262 679283879 417147470 381539703 413399329 23444624 563426505 403374284 850578617 656943494 335126958 649609050 49962578 953426854 507126579 62610373 138402931 388820120 488027523 56818 32800745 833088336 846932847 427598607 753013718 105847673 447912593 968715410 290241628 731277956 344398373 915883061 594782759 249880629 550499538 420441813 549319173 234919156 657914284 475355339 954601594 532449462 517548771 951008151 375729342 180288530 301248180 477265929 521444696 833942560 565193517 745772273 25931144 12498707 756034353 307009268 563253483 822962360 277895316 762214877 579154125 453278343 840932150 980539529 552258680 926036781 485013220 451592997 497181157 630964641 599566190 576016357 840828567 437403374 733347462 601359948 296767280 113779364 111367952 688262052 7664310 470716967 740833982 528618966 935614559 282811832 416775485 170223552 988492147 88422497 217958039 963257292 483769196 581149188 205262496 285514883 787101920 953829795 535035575 44292153 137321269 926604981 922886676 430807857 934829350 427534522 666959927 468837379 443665720 122839209 468222241 27115546 755257595 855272930 948017048 13767391 955512049 879295661 266479460 889115871 148685194 489340147 412020758 766695148 373292650 844280031 574357406 393470483 236848936 308024067 563045772 731880171 856451944 767199342 524123086 928553933 523816753 609340822 185026810 217899092 519066608 709329393 395775667 150812595 86891976 530104026 864673638 402622163 336923286 833081976 308952646 40564563 825976349 583222502 663944619 885152802 246584434 453696948 491067052 877607372 911459757 53596063 132967074 113182919 783848025 174711333 184857305 629491384 975249243 447380694 588836122 361658490 259298030 362731767 623840384 111746790 862599655 57885235 231500252 504488281 265743511 131968555 920049703 894713076 751001782 723077542 253953213 63858795 709889286 876808590 985313580 237294010 708224290 930861485 913247510 780195225 876410055 951170338 454911655 194738433 213405805 335315599 42802398 725325377 533396525 325976754 60570071 115305515 598351819 571688442 176342996 479075891 454925145 150783997 566535600 890314146 205805701 462562997 302845273 523290662 491923428 822480842 635209444 709531586 350644061 485310843 859469962 34838681 335375242 937654594 47439876 506314742 882857386 192147015 834509144 407278920 551344689 676306799 549753131 645011544 831332352 512801804 463511633 291285708 77439851 822019647 160613571 755528734 307092861 362584093 963896816 499988813 233403089 741221428 162534303 149845284 972221071 673677509 57939266 707584020 445480491 176885642 851160825 737897772 634073046 731348223 80771520 569850195 637129136 723180895 151411872 360975245 638464008 903105778 425698443 864084592 71036833 565551459 307455580 933319220 338065168 832636660 960646620 368459913 755199346 658358334 807305402 963133180 934399776 407156306 655272992 11278436 847124835 720326719 263747096 444452392 398152796 639591304 233200325 709934661 545760177 41159269 684334921 285885501 272876350 129454836 670641303 933457807 707126680 402659403 765874053 922248754 703960142 928394703 395870956 817570405 133071754 66172920 178242987 993323160 64821021 919081967 24031396 283298103 297404096 615732501 269001849 465283821 167399006 795939196 445119244 2575058 768329104 338784502 142846039 95585697 874691935 725179745 265188048 682564797 819786505 411570081 36012980 587912112 763748343 732236025 904168642 485635413 761175004 40256877 631846837 736137682 272673106 534053934 25977324 824663489 684204009 315694146 398415578 655741558 348587136 940682153 313642313 226347271 624317126 506494996 411421644 98379866 968181039 743762958 26492993 585195061 318549768 212519232 986538656 961377252 729132387 144614253 21689253 965615480 409347461 945835382 778629114 288021856 14807691 623261773 229648135 629691200 91375517 176380832 692162072 903387206 958175745 754725144 695256632 694237882 608288205 482315571 813022738 785268485 709541965 998066307 766003211 557777683 231074129 34873074 356324128 783322030 778199302 793507810 914122703 786247494 426859867 199923221 27565582 369172659 641390222 813346538 833456882 592324136 185121697 27678082 490482937 206393525 875852837 275583923 287860439 815831136 667473529 401414709 919932946 495000528 191433616 99291216 525583473 143107490 644652130 194506293 63951389 543106957 407424822 24492821 474812188 341433370 552603940 408305351 219698189 593521097 835018998 769549982 988183410 251115807 172365503 433431611 411792164 728885360 309107125 420659177 779883630 148799118 32490234 937492972 62037333 620322667 923434400 793101081 366796990 462225160 179879760 399214105 984781863 668904737 218014539 128197027 626153338 807032352 158015568 122561512 980333450 561787620 115932027 744909547 523719327 25064540 260090002 179444558 81908364 778790211 210846926 135527703 444875248 346673741 498986424 956691198 634108069 925839319 198829875 78288794 880700478 542023945 961804879 930149718 134670026 105464358 287748226 893315373 70801763 840620453 956033075 742227254 279194109 69216869 42677360 407932276 214355615 274786846 56395906 971309877 577997963 776000705 66273386 154192422 592318047 542598569 447040673 557628362 180614601 957727557 230171071 741575459 802973862 921969700 445749457 837784451 560907011 22270458 247813026 384392661 152010171 697803224 855717922 481110238 998399563 939808706 103147708 228986406 182338067 368533284 889210987 578268501 453408566 713212966 257658082 549771994 384081606 710384204 938466476 725106348 97625252 55064352 874191546 171979534 455597597 185674169 652999375 345320298 753565504 64201879 426157383 18230692 59534964 351517407 973328520 839177270 662884525 503682697 739584720 469002157 625822344 637452648 381036260 556075288 768914032 231614456 891013060 104702811 366438966 832306934 264893821 74334201 21139931 418981746 311803423 123042661 211421356 413935302 911166652 120630090 901633551 481805612 517943181 191045280 684418368 40448448 644770103 249311803 519724331 67597052 48663956 826057844 960774636 349056310 782303265 371620163 401473592 205782686 857005082 451811891 778964902 30122677 648566690 596289290 668970076 102502559 204554581 323738312 71469981 710441093 999148898 675233388 271786626 162382200 689653736 490407658 302932168 461474575 117812943 204442829 210683507 607237277 194924036 922638802 667485350 873159046 523577458 965217147 808825594 197512817 237057931 148987938 676000570 222270476 363499964 507290880 954574824 345471023 815366121 318272475 881137484 679421705 967594551 218489478 14419477 329915204 94433806 53667753 797745582 517919674 602105233 807452965 439646531 123952469 508532398 274795524 567522871 358739578 661852802 25791590 847075270 550543035 390511960 150983494 166044418 880058096 827438445 948833203 754017523 609446740 730713921 777121708 627571256 746138245 329914090 653603305 282624905 732713124 183353665 693435935 807244185 779111772 796828979 525062986 801478539 600486773 334828809 997044890 255191883 372456716 431102958 760878173 775058713 813285285 678928341 977998462 805308658 581042192 129828220 573308547 137468588 858979561 653143222 984098319 254498617 753812068 998653104 627019562 501651010 808786322 594430726 646772975 666338093 399137379 570403276 925068406 107639001 476173303 286141599 296511340 200975894 650899397 376931685 65602507 900211821 780206514 202668500 333578730 482179531 260465624 618101004 560358367 414493994 313954542 968103020 604221075 739993750 850347476 13234199 659994258 928357497 260595269 716024606 944587234 507696878 44790204 634244264 208327580 87163504 342241444 36903849 253690217 867221833 819281696 521978006 420156338 550536316 778817552 266308873 631062927 773051957 556525490 609472801 796696870 530320604 432230360 197646577 784165135 108450258 294035588 288018869 171894758 814277887 735311163 313728379 682084115 380735440 311221740 376863846 505109914 208676791 135153359 864344198 461625711 787220042 347612723 855706203 595331358 984267439 377747268 132987412 75051438 706122976 780970636 853220522 423646727 583699875 151713243 790576353 632218141 875548264 735000399 335858727 627467073 692031323 889069049 58070920 825703488 98869516 640356193 125322681 146874914 916276175 597272069 307844729 118586715 347408278 918308293 851603333 151408285 73894034 625977793 556639442 88812742 691509353 316794940 605974631 640400931 842144184 112687294 474951970 987185967 253392740 791479597 315851561 547985010 155092191 210317493 126709343 473891102 938896457 834829354 580570370 838507767 728749380 423789899 343847711 831719483 616987959 361843996 108951806 743078616 432996659 908745396 702448951 98900180 670378454 876399603 952143207 51943392 298697565 826012684 834908660 721943489 936527884 195775677 333666542 618990508 248655808 10461188 962477921 318003152 893294523 939015343 542531122 229103139 791638161 470457173 243664167 389838151 248726151 787730294 901643234 563901232 630857490 334504927 296942152 844293347 764672188 468231658 668376698 258364161 523385431 780365948 203290264 107344214 141303099 781689047 66086534 741995646 221248362 383063758 863356978 710378965 957407886 860748008 143391600 160251738 773771609 591724607 405916081 793886439 310953789 926769599 1488671 148148622 528753797 669480597 689679932 63539959 717190704 555501429 535372673 919891070 802172391 166118218 890164095 39135884 804841310 860001713 932773439 709295402 33487866 453659679 36905816 817364673 359422377 210798743 286496301 361708416 636268465 770175902 721508992 391873254 151947074 90597341 777805127 550728001 724957352 821171229 475280626 229202418 909190423 430959116 183558883 781641641 810490475 443949348 378897798 12002751 601682411 742685089 609612666 603423788 985773301 537520874 758605851 475143635 524317605 861993807 863197975 739175380 560034346 158558708 88686082 760769922 466036557 626640466 182566606 448690853 683578838 326425701 420861188 840685755 925343793 225390475 628584891 274868923 654795210 412578563 852585883 429055461 969321146 743230580 541573578 632076771 76637920 279524889 336676033 286328611 133126127 879224647 725086201 855158184 816860488 688172668 108048080 879792047 681152291 493879362 177643287 252474238 460327709 352691480 916954961 800513131 272940847 283540401 238330612 112548139 889072707 564876235 279075128 649494509 175296725 180830627 432377680 953987538 704688899 839733858 844945639 338346454 148566424 294524806 385006878 953992709 112221690 424108843 812440713 142634356 36356496 266691956 857688946 449825410 201490293 863999657 440905866 612590793 28146023 588689169 293956444 203381252 574276727 373907021 677857448 498723024 630982825 801670569 482989152 671084681 370339441 500645677 758396383 429310416 712391065 297518997 685154548 245933171 890079539 304027581 256659391 165177048 370575609 268040870 711342198 817842195 617715554 920883333 239271509 327270412 283315103 224625795 131406732 668660026 415945113 611549814 507088131 984024698 304251018 679799101 744564810 310469532 587540898 647047214 599322161 505427213 79730218 306960361 161272963 21150231 108200502 677655913 414741476 391044899 119204328 254143020 558249909 275755191 82333165 865300739 964525811 4491363 379385238 443778196 5306176 649655249 942373583 172816449 667488638 825357366 46347632 210888475 195253819 716366972 3840138 336651549 380147346 919388200 180964358 413938524 737874607 734200513 535964137 706462086 140617330 187071525 56701042 731530984 729385974 272417180 699956426 188966376 119078983 246902721 255773765 396639632 245026393 647211401 496607302 840701685 270300791 685178150 490907277 543769907 196406199 344057437 539592397 552700329 576602389 129562849 630919372 270054144 602736236 38876354 327172188 267191861 800505254 849053024 860618470 469695492 843506260 513401076 501111662 382224075 559562455 877914072 769146016 633498291 584245122 976721020 218869742 70939660 719724534 903209297 700949438 148078874 20396838 718475865 552144607 426087635 100327899 512797865 135035622 955417302 116140800 19103915 726152252 84100127 951387219 534347643 622512510 469358503 625658332 22480864 480516516 992264508 919799344 797679839 102073127 119658486 974876119 963463231 148782557 296040745 124163046 870887891 75263433 456524352 113052563 378717159 347214678 225358686 406296669 221254891 427432660 713493456 65209992 72478743 70849930 632913753 889968960 328945054 269515563 982245518 866804594 589960593 152792263 309264710 222123178 517062502 609511796 49718461 973241846 860202830 690781275 343759913 275360376 594681532 499234720 159936856 601396579 915563222 211878163 850770818 590418475 949466125 493217168 614917689 218432914 295691764 917311737 248611268 434817729 166875426 995330994 821407850 472424167 964314932 193939738 786971259 359338538 140407322 812449808 445216763 804269620 214684525 785536548 456536637 207299627 937186863 798338479 885234693 362528292 686339320 352490129 834394380 604779696 674544472 47986978 508404862 448919115 88783044 490241246 103194247 720405800 582029571 853837700 963653552 234860928 564415251 419987312 190521135 270974771 649643665 821727689 87877400 783448911 327983633 572559748 794867167 546715757 381139307 596684713 501478846 234586615 589573596 203893157 118352268 416534044 72640981 107570541 562213960 658672898 258690190 562357693 234811346 781010249 528539222 672505557 117122742 157092568 395378412 771826118 255931154 754171605 79572150 823061289 290192556 441994656 506676827 250659712 342193166 172378671 637696358 985425362 544623343 994137129 926676009 704930094 169914824 588290908 77720173 391174198 364643055 890104853 766209566 617186232 572853154 975253161 872570507 73318837 902449390 986845176 409498528 843698906 525107809 42934032 4861495 676800801 77588152 260063966 709973020 81415427 956383054 375378602 1830099 975302252 864012336 565694600 668441390 233143741 116908242 766137685 750170913 220822306 117308762 807161828 161758711 921074962 564351438 566455867 760638350 228315581 185518973 124151228 612639681 759214171 410746784 451761726 294729583 332766084 197181840 439984856 866314815 597154430 551655492 609160075 9734161 13252957 544378782 126134433 709527526 257191811 224084620 662927336 570902769 129525769 201733657 474642391 409309469 822896867 2132656 208686690 845549461 518979215 259147637 40027815 343141550 547777747 835421527 784309182 861691163 256712782 815558909 867422062 96008266 499492090 800050174 426609402 790596171 939075946 695092973 63334388 90683112 205983689 564529881 394908119 863202281 30122579 34476193 656393809 924885136 190441658 662754394 632319379 681834826 247739716 104412334 612358472 44667823 729667239 664122140 660341005 755694931 125423277 91442437 997876264 317119256 492776317 781423144 883589800 633509291 877006784 430808645 75175507 434172014 931968263 390187140 279685799 81019201 644706970 423474805 94154024 422273413 998784363 812796396 590159147 801619403 623030072 860965366 500367764 77836865 947835063 21972929 358125892 478308794 357713106 975770305 131790498 520032035 353792381 475655469 155460643 830820736 722662423 537073592 518225243 31050643 61565432 777428005 915637151 155344099 253760323 968446513 437935485 339512197 85137724 667312323 563321994 587441148 20390013 663514815 779768326 232688040 796152359 772420404 951002731 549896491 878197044 830785585 553619958 126006960 759241900 632337529 670782783 834752964 826062369 267678055 637177895 887888527 592290109 2017181 642720692 477527244 323882195 677841153 793540375 568190614 359567222 21942772 61714764 433416924 522566858 475944824 605134685 361635330 694349831 980471605 250718901 917259466 621490995 70762188 977951349 647520219 59044206 734636785 798631381 862080429 456264316 972172112 28478524 97979860 870894525 867813292 50855085 623044043 711502529 464804120 731158071 295477001 839477756 850032260 963007432 80605527 614868236 962098920 366191649 527154507 466760281 513004314 189330734 711745164 175002773 816700440 354100548 865954420 145510908 803565624 388798177 352452545 397093880 249430726 722356683 601820596 149131732 169731622 191430251 692857588 199968171 774396403 627660963 980597583 182076135 748272709 478524511 145741808 364805527 717039727 146929220 580254358 313727327 833835570 27643021 361821260 753354610 744767177 442612922 573165534 78953430 972691200 725107874 437696163 724519153 624446807 314813172 286795829 756245063 193515100 867784175 348193139 214224076 231048784 475607604 850350562 144275020 753426282 342835394 530254268 12873567 942884383 470282676 848980376 700419110 333931191 546639892 241523034 145484252 889928480 521518132 127653624 258322187 837336263 639312253 377468864 183324202 935238574 528600478 227484124 221405254 132461932 285642653 384853375 302913305 941404061 571147912 44178985 893246634 153255710 900028445 234881642 945268998 475236273 327096228 721013442 630308793 424682569 387398098 64554030 22835919 622637833 488473655 125366526 894149345 198798057 226941459 585743794 567730944 332572353 90404608 134592723 101301105 120827337 246182146 979059399 865723014 728649832 289568832 313885979 294679355 296185156 417737644 303241801 402055655 729580437 369330881 283176618 968047488 511979355 480954925 170490993 170102550 62890671 909818733 315258108 562280600 183050163 800623101 947038306 142354239 603197095 935069061 280090642 296629508 193151978 535277762 394242853 647970935 404603167 50631213 941203164 63824746 708992318 380096001 392188361 785919243 217342802 27556556 814996937 10573540 889097577 276697738 606911671 342370026 34868758 103440765 18099601 339787842 581085431 749199077 133609057 996307976 793285 465383535 456359614 714795183 682704586 243477928 544855759 332822122 330325439 171856499 170109287 931313221 822762503 945728388 404257882 679618485 262767409 912993253 178877066 921617152 717997909 430450687 681908045 110216479 298080953 241005480 860547563 138813752 262391827 666224460 252945020 871814771 732589505 276511706 259753365 116294938 435891922 337466200 329495005 478057930 809744758 186259857 185638962 669466240 420328403 739748885 826833492 58034659 780651919 799742720 144959885 925885859 521964155 999264284 639512597 589437183 545737056 611077550 585321498 476206567 598897449 485877601 640282040 360247261 840279208 203342993 537632380 584171549 781623173 432974658 610575327 780237305 424899736 605604413 525533138 531705760 611622857 128363343 534476204 663296774 601405154 678186008 346660452 154082703 763285612 786148875 480736212 112462201 681793558 93175427 334141964 31541011 420825691 748446122 20159385 662703879 66288457 616534822 72269777 697486020 592446056 493830146 613277275 132508304 454933584 666330320 462255232 891026959 126361245 279091862 319652813 500488850 161208283 529879528 496473569 524884790 187763433 431698428 8907376 267149279 626682716 297359396 753295140 300702585 782419263 119298795 868946741 280278889 881396366 993961393 977382609 33424775 474478282 203645519 585872579 530715651 105952367 70626910 974172635 650684776 464283597 599669560 337274346 17915949 139740241 22755690 220703905 919729312 300313796 938386127 847689846 195967169 832747820 25161598 333508882 234643963 232809208 124240338 817981999 689305785 623144116 47351214 846920358 331019506 189808037 313311974 82337139 577627614 724693440 869744924 486371228 257927680 80346931 738164485 299741922 666807788 566569287 237209183 958816791 472230235 562939645 414725167 676633011 79673819 605634791 953128589 133332085 620959155 954136333 608165511 150905688 756485769 572992528 301668054 52473938 799291835 257552827 82405405 995597023 715033166 202330413 571812734 815968313 990446218 574904618 962462846 574672791 403467535 290370277 356251289 135930576 216529885 249904164 436030905 275634079 74318203 938750501 737563430 641700900 836347508 737602756 990939721 700293053 312856501 537137849 765044591 17300799 203772853 554131778 456425894 875430552 852626970 270883179 256356643 578423524 720546645 482699697 613695544 516166814 400393616 170837560 319302386 486316507 566900043 941245189 883562050 369005541 464239428 937413244 118132111 215644216 696402985 128244698 47099927 929561283 922226081 18735647 442460462 993357552 96699132 445385599 975867060 457022715 212536792 144753680 643779868 541859376 548363735 353963001 794082423 853868405 220409153 332791709 913198169 684830159 601858929 536276767 607936760 190674477 728255085 641317283 161921797 116436449 840221837 834590437 324417988 802601932 825093200 126597309 731675496 909630802 397301761 247429683 15696788 395726269 17588864 453954060 167289508 345834740 374690317 383898516 102874071 862284496 458632285 669589713 330311772 134774945 374921453 269901313 946939576 546325069 364250842 505877759 184939711 662114866 644749617 377236712 522546336 506440091 817264902 69573844 294438472 188966394 751478281 522503595 552352052 6923029 718964532 647785763 478312756 768295527 893041078 398982457 697085627 217159398 112874944 164936624 313127169 418221952 275847883 155546395 84465634 554551418 418918362 678057170 85791068 426571476 526589337 904128920 231769001 485808377 704650000 256585373 100070441 197039664 741230726 64888919 57969667 299636718 338521852 286410466 912857262 495646040 674033952 574478900 521072527 974582830 801378782 228618834 147742202 695703163 691404268 411093852 192698505 769528251 524740201 622099900 750052545 766720832 585625772 425702445 708724783 586766573 414230308 955423844 846629180 176365844 839450970 571833939 553233897 644087485 992319547 759456216 870985211 372932415 192473611 983004970 549464749 329476768 450235948 606701317 570957186 291728525 331800121 527936201 891138607 977473939 72047081 960452021 980959122 515893248 392327547 806512847 324996898 298021549 499128904 738294728 523799827 344862636 915207919 118895645 665663650 244302419 844376372 38886343 464179387 540853821 777591231 690498263 396179484 130815545 260315244 909799428 618172938 482812296 975941412 29940352 462941722 346163762 165938589 170193291 531423076 445969849 647013056 448167129 842051860 273002444 945406753 854016172 897796405 343775527 636481578 659098993 81052438 312359442 92483298 188933516 146304043 877743237 51537048 39300520 869955753 488368099 312978441 610236351 367925883 337081281 100761439 129926279 347238271 442181508 526533967 429786664 962482075 240270468 830255652 235420275 428927661 258149051 616608709 289426840 444249287 782029205 21940213 794317894 845220108 988605651 876903266 712724811 266577900 120420633 777198451 963494359 386805632 695675565 768428852 785464114 671416925 919769681 671992870 221376639 129941210 505775107 403792954 46193355 910732177 384727742 323570248 141113358 371894565 542880066 580789482 45004370 248337054 210987323 667459970 225150934 136836987 947223858 89618926 178678302 19765326 938494472 306844971 637793702 846637461 258168951 355752654 578436060 793099838 944254264 671571186 816704454 860294338 223681169 391490270 896779344 535869559 167349838 614148438 827816813 190341868 766093896 462301271 698297166 694016120 784817860 663649288 36576214 370672526 620701151 738030007 162959373 958622035 297691909 990534554 178282675 892370280 478340993 449139118 588164144 350956056 122430109 159528898 663382703 826913358 37246240 843542628 380745086 539742851 310102599 163422982 797802207 776331412 772883865 617595593 125686853 73624563 149950656 452079487 984707728 343659681 582310547 939560144 729667939 477070920 473858945 958652062 837773016 129459499 748761753 372295563 473226761 414878769 953372545 929750638 454469244 494830399 367198072 421839522 54355250 605365457 704693322 931865927 936521257 206916192 984590530 130161769 480925869 483144565 601371889 710047731 419528475 565046878 676155985 433709577 69439934 502783557 437952819 442161294 168976944 344197949 675407316 612191389 3835280 815861410 913414646 86779123 226600931 768144801 803288509 465969227 758292168 374856846 943585725 589831017 86303154 801884204 712025477 924242182 731020039 420163863 89273019 434792205 320457338 671827720 398254627 421562043 352890230 704937139 138590806 125699022 120369538 337490039 565109771 632658649 286415772 110429665 239324332 246827860 80251836 927374095 945313625 924166118 414147873 477670630 785810213 755953280 425372804 354798918 130208762 241477093 448891452 28696015 124914658 652937690 52162260 910932067 105103078 777724846 121566789 263083411 209136877 936520902 40373399 37692971 202546035 522326966 151647721 757321115 969074919 566602739 225236826 525877682 393004381 620128714 359369578 610145276 404812884 787399122 223566244 723605009 245056425 124374217 346960264 789967625 388111834 163363377 632866349 970520773 747814405 618339283 656618981 202397304 645621901 511293357 221935028 386250420 324765721 998622115 580468803 796630858 50120393 653425437 571877061 720766873 950466836 584305175 704605760 441122682 69275845 333169618 572770327 279605773 760349200 870842313 17633519 93331421 228512256 636509348 62516662 119836999 699003117 310535160 324325460 718941128 812237681 264441473 989619422 612647982 560922678 544796109 323266285 155780813 664433156 97639461 127768470 490823440 400499081 338684688 621117307 681085952 897238382 657807969 335692572 784436536 25227612 601456139 469877524 947898117 477857711 698565372 32117055 191686947 719746491 566085826 181360736 113335976 509703052 440594132 825919110 431344022 710427802 179005118 476223237 413602152 453460586 421868641 479183994 682910866 916267997 708563959 557479479 192304916 920895590 441044195 60798513 360971833 158325043 224197583 270235894 135592622 980957105 697951665 393233569 911069258 983680846 2807046 465325353 503317334 414589234 634813456 337778978 567382143 574331054 52956907 807109017 474084440 47446750 611973546 658242911 819297093 381378185 642115130 424225897 734855665 826592951 233290637 703166450 592664917 884025952 812924345 883679820 860288695 379009598 419036735 989982794 368513997 118718458 918538460 848771402 224226799 511665649 249021179 563073051 473293786 822269509 422504528 270114483 140770381 727790021 268784337 957356108 659027484 454145796 844344295 66943332 626798469 509843867 112047740 491873999 654129678 453365830 756331357 596535400 55871271 954271883 910749755 33036016 573674744 899938423 157895143 931103031 911276886 800821255 25352335 237405902 401864432 550219347 427053980 639594479 254704677 471178909 534739310 654634209 81211083 50042746 802645563 957595941 159569421 379258287 436596196 40820087 450545227 977897275 676011793 356284895 382743058 598494857 961331829 380802332 475243590 592505434 99023146 792758810 27550477 54767946 261101211 92047250 923880994 348863090 68885360 24508262 681570191 443767863 965829796 702008362 384137989 225044499 504897108 836224811 206003112 310293908 376602279 789440725 880840372 910591802 548957340 703492076 854891850 254368350 275065831 839441039 337772640 998085152 764458832 536350523 572994553 203730700 264787701 652113304 769742727 356639896 749414490 164512240 626746503 217671379 843357931 429489587 160706984 585534495 953155229 587736308 513514535 622701603 456751290 303739728 387404607 218136529 668340335 161702716 108616415 523718439 542820586 677668179 950967554 659540596 310524272 518848769 733689676 843550590 119067644 593002373 411965224 267926647 871595160 326288503 186506888 879629734 852610161 99775967 48237008 961221939 937740151 360501709 666139039 450433567 909243114 851936172 258507385 38433999 252646383 388627352 121716662 555121629 720459599 330054550 272190865 790833393 480373946 712094536 605510872 63047865 425389402 408057924 7801369 707224921 742273111 552187128 732817467 843209141 111153578 573655563 103239782 99700046 946235674 533281682 701351014 740502186 344464531 283988490 827478097 275404481 314063584 423856203 262260686 840046105 470040637 189697222 431775665 69609722 232346119 889349168 710821103 835283728 818647850 33142694 646688248 814929602 556433498 181386907 11780054 488483418 943446566 737908310 512478282 987597591 241803235 129915021 397137933 411921721 96327710 434161813 375029692 152982292 389958952 108408916 297158270 991242781 374242532 972474930 989202385 399904420 560386437 814416499 280405879 88573513 567123579 9466266 540072670 438127958 373066262 729497200 133408464 685535124 609650124 20742301 954467735 325948996 600940310 407623437 823885260 491542289 3223426 588262633 606638553 760783904 121216285 163660564 539884290 906785054 397454804 585926221 720493159 915216471 56308855 739899977 935981748 375791551 934746266 655438935 755855962 812362227 787651417 917993257 502029894 496834179 622364674 326115123 997929040 978788805 381969702 268593096 516972482 51800691 834654323 487008196 519720046 621085428 931251508 660547552 934091670 673048706 267939501 637695560 569081837 523541819 164023070 505563704 755914667 930421313 752242956 982904345 242234584 820528243 786201095 587657041 917129214 334857614 984422359 730454346 543237115 624274321 972684493 966150773 119390706 657162039 992828592 943693801 491140336 653910008 846342425 214268097 663070365 153330990 686461497 520399347 577172415 615442310 38683340 155407939 780077276 183980061 134829781 617514047 930328871 462534625 437589083 871468881 76657596 720287238 487557077 101077181 653947304 268084693 758896259 592849853 843445052 221653825 522128564 597721400 947610476 973646601 837067934 13693561 369053664 971529232 830721572 839615361 439271674 114294635 698373739 422424291 298308157 995686868 728529412 652544490 123040387 846425448 291200072 912980230 423804538 874344838 439481233 501104182 40414867 271473482 257861139 10395677 816914286 99704790 335430670 929224153 403750140 551040987 999859734 575276878 148602650 917102008 968959022 681162984 388818740 859416190 857917644 475179775 511627645 383989860 136147187 92068077 511060258 318269873 64288353 354764912 289441573 858926457 99459021 127150896 60711986 248814355 91441865 784775103 750207114 14447090 950589482 179548469 105233974 845538737 86168250 451205803 367792445 256854035 53240429 954741015 242996900 686511066 765017752 90068289 188877764 482802584 968378346 597580618 554015445 451310513 583465303 556594354 83459401 920348315 295066676 724002791 233416705 97882531 857757455 276040053 654697722 970561407 880189634 922554231 711309137 198972172 392325975 930960370 823710127 959436001 37380853 61215265 530330218 593963571 458041809 208110902 386181836 861565388 869518841 400788686 748435785 251390358 175683786 835688746 129908379 835697345 9871853 778299429 409810335 482911373 887521498 55064285 288339193 103027538 159877943 329114810 346871330 697924682 772210114 153129903 67607756 107120934 101909096 601201166 917124526 712031648 905224160 326000182 439799525 960797684 563037082 2825967 618416839 262207906 486313083 439787011 406712516 120618456 142504707 289404740 808842918 599813767 606888293 351572825 266168921 262547043 908871978 566542486 911519035 83205162 384780257 771245059 208521445 347673683 989603123 969745973 785922069 764623141 851769491 461505412 678798716 122817239 529446 310487214 22497426 964024424 698632220 88355712 438249771 450940710 422986950 470431778 624164222 214688910 730797247 248071355 236447986 884697292 315509532 989799719 211461306 150898962 228032638 29035979 804782917 98227917 767210568 782589756 626115792 713721168 242625235 390427059 960980310 559416062 951765391 568138542 179997100 905448370 818034851 605141441 973420096 287631803 89757 909021200 911120115 39703125 550454752 728342214 305099371 63063579 120902886 886727129 591340040 613589940 876988227 710826838 321280111 525352735 194921275 947654289 335055332 686438833 34369716 315571978 393226755 170338773 955439862 148061451 997041742 580626191 55069960 155427296 805515453 389801336 465726262 963797454 981406184 901962341 160988521 204334885 834138662 179311926 203517778 784697528 580295420 325993049 921160764 859197570 969174894 652413771 514528341 645855768 519514594 281955081 354603753 330428066 123065313 126800516 204953356 352445819 240288250 424931724 799914367 700567479 363163377 788283068 61777476 359095695 676064720 502954411 940738073 499403206 219486852 443911612 182964091 228055776 231735603 569131253 622102525 737292515 576322071 167162836 484222001 509325465 819569240 183855809 155326163 815436806 25777519 168822607 547746512 658581053 398931417 273854300 996359987 895480053 338189021 884172881 860420381 667783767 986494562 846303048 668745815 781840518 360699575 844991349 490295235 457786439 581316087 662712816 656452219 533499967 600725484 358870063 145581670 161711098 993944352 180974949 886434696 77019231 38355608 666336101 269107157 126329918 650195631 447492792 367663803 306196410 772870302 53492681 956432167 792933977 747268702 948428606 988785850 413604400 97007526 550140010 446013854 154876134 694910763 140220977 985368247 183749256 780722956 666258079 910962964 835701331 616937060 132509898 612728762 148025513 155234499 724486465 869881132 575449047 710285606 879143608 186227309 234173497 930497034 468130746 514412075 722067406 496256655 822660135 966182783 360780382 757154147 522624585 374356508 133064041 999833336 708642761 884395321 872514779 544282444 651122892 563740979 972229943 527928598 22421742 439545456 754120294 466544941 944717188 590493733 554867815 308629488 999868478 348927843 101254841 648028792 101095858 170691658 197704161 52217110 468509917 346146069 877475896 948211429 517263754 997993181 886634100 962891380 777344237 929054651 356691356 115994741 79652924 453972261 506284270 599062809 437939943 124042329 353799308 775103451 278478446 350649932 314410090 72627116 66122655 383980563 549789884 254799470 937072609 162227905 559561082 216279270 454027651 866170491 669754862 577107489 936663967 404976258 687462325 443159583 18273830 7534031 833153394 744742623 2802382 384579961 558660344 15559063 671064180 60023419 957338585 156864686 695325023 601837865 315757740 692852602 707755009 140933316 31358299 286125684 306686872 949958196 533082322 281533171 740681971 793666847 77314145 890790019 517258784 415898719 22739392 818666146 961639023 760059896 334137856 274404698 186265688 403802197 971291536 895092034 45199726 625886911 309931384 66820580 970632195 993579106 709729207 306991574 163967000 176581007 507992077 210444636 729649834 509431562 3339565 594848889 327021967 307580539 845559410 158063407 834131810 541135716 392487852 154468985 402687081 886085505 879171547 854849761 780762007 8858070 910296654 236899364 502156197 66503084 117899664 507848664 352641495 182630113 572106542 164818221 649955855 41028267 697460431 440887399 9609381 357441109 140872533 370431844 112363408 147132705 527250676 262168135 827638012 647793913 265062251 541235147 711192023 652374243 335914797 74263570 46986671 489133181 373956502 880441278 934986290 85148978 421067370 99556471 992471360 411352135 392479000 489501510 778013441 158030518 303880015 261783461 828479361 769808835 820450245 886920778 220879405 724317816 149122101 613029278 978013170 35862137 860446503 77422015 958893056 72200703 8746061 955465086 241364546 981038921 399141440 380398125 405426791 568569257 397212748 989813168 309108790 660919665 258658585 198851100 279703743 944762449 50740875 442569310 978697427 739599724 759610849 317896039 632198854 489559136 669712889 334246812 898774594 236035075 636475144 279362366 24247978 817811715 519377295 46912632 916374791 696755130 42549119 879403019 720241193 899731174 234655651 740553618 706220709 374734060 731377865 318619500 265574816 191577776 108932763 787198722 181946572 51770910 546088450 991808580 176054015 720753040 897496177 977802499 114947081 120263739 215268326 872607003 567703712 281100185 972762586 187294626 964506387 415255534 979243057 689024676 30545381 423122433 120309200 237695474 877792814 522556894 716827287 999805120 244429236 575279707 171862318 899995767 859043987 591075237 376748434 927382479 948742692 611197281 820081103 757945801 820312395 519710597 494715637 212043005 349717722 644137837 506074465 498747553 173168553 596747227 40069954 529886240 934254025 209718386 323468219 405141798 321727995 366574723 503101162 69191360 303482034 563858678 196104328 172341592 593684716 237958450 834268643 111738875 887938112 134935606 758030544 395618676 252997346 477476541 639208589 839661457 190906542 555593804 456827881 101804877 452674224 856859870 51058079 799141679 239235287 844079856 397801512 889189261 65037644 184438368 528328013 678733266 352997642 413292473 399546692 684233509 611348079 297197862 453979774 851881676 968620264 143794838 570097290 940273854 737157902 289699447 774453331 215053037 744370663 173192557 9490296 641456502 603804471 541383977 389338254 597342482 587734156 706621204 993737481 889280120 582085869 751494382 67310869 524947864 360986079 672491308 186549588 155141838 369807718 908245959 76049510 108782861 423408275 610759814 586216037 266631573 142219459 917721096 644414700 74246313 49998879 285736118 728070003 450973480 28962807 491675436 366575248 600481639 409378599 540548291 202269124 99252302 292368194 137048243 468861900 937137603 160061652 245940746 155776402 854372284 722559026 890378618 992347665 199830598 323564681 189628708 235471111 979084555 191273735 605830807 46989159 363075507 708698105 503793335 930739322 909973413 568169882 243824440 981050455 40401928 246145248 440911042 343445349 10701653 612784612 745784210 198861076 341623496 319266830 680637717 129583561 870405839 903156797 912644119 605278059 232425956 992664104 247156352 694433757 727318262 158134490 774837002 732427538 642125521 508058601 211701203 26402754 546111809 720281163 239486271 724345411 857713035 886005234 689976376 848299644 84126838 943332128 305428430 788525216 149382078 44439993 562014538 669095963 815154997 90483144 966982229 605921570 183518343 67795412 624739173 711504594 710697700 781157793 178368840 558909134 298053313 8658314 385975581 271772918 632300865 908218481 618066921 169511780 385431028 634539776 478708773 50245124 11724831 116606517 811039988 931552464 63321337 344408189 913215240 211214369 97625206 732050277 598318646 928202101 202671648 391954780 373116053 932726617 677975925 479405522 16701528 617587789 540582643 292198412 339132110 690928192 707883584 24681796 736664961 248957585 799637335 692362474 640394155 755400078 724015586 772688105 443452404 661902064 392077900 882015708 394749557 876240034 725955348 270857293 827172845 781843087 124544743 576596555 357430449 315046371 953001558 104243228 60962450 972720014 687316945 595783732 459250171 301997817 519709579 924499111 989204802 630678083 752986281 591410792 548866961 752080345 588849327 190830745 347997337 214744356 762601265 835259829 454297278 939028584 710032402 613173113 415521272 48466980 655716675 708787344 948213257 487650640 750880587 894269778 176613986 197971178 78537495 277759551 513665260 735754209 350356 326228356 17103440 181456842 422076100 620966724 729222482 248748921 33961272 879266680 641227754 183144526 367074769 307370799 741620614 846625811 786553394 648210614 99339860 662290720 608411615 533120147 52831817 37305927 229964979 81462489 362515337 54124267 639331007 487193907 203168261 45884371 138705626 218645489 391747388 466716897 718956135 190577965 741653071 530938854 587335178 261720268 893543876 232397692 160574705 837043240 235586987 297355175 787433034 924548615 704005214 801507318 614017853 169071723 468841815 983701892 745728493 565406384 496908030 981080086 792043269 323818546 487084803 429253175 279150185 231823282 723371821 747932726 865842695 804279345 225519608 471169999 678931401 889639401 249473470 923822138 748144560 702177046 330914607 405478965 210230476 37119054 262406040 898978457 427557928 459835416 101045616 513658121 172917638 227253020 183302297 400984358 46827431 541506569 839706450 698536488 808809065 34252821 33086536 274716079 929946505 724282399 928993251 431443615 288234579 222304584 373995766 42784120 119061323 383824894 176403992 55935447 545246285 815398814 609042930 672212155 43430124 199461079 930521708 772037191 632993675 547051195 918506310 100818854 131728247 966786604 135413658 804490259 697485951 473866726 631508579 237578296 966872727 970684687 603064798 813046898 466590772 112632545 929223762 132587402 927956431 240435065 237116659 375472622 849095642 824297462 562045446 891970049 893650329 489764836 484330437 844933068 787212931 858360704 164157502 784608115 232544954 95093207 937591261 215545036 554600780 357296811 294340592 736680325 962880397 314039187 627868249 394256630 923515289 706691455 885677336 401459313 575036055 182696291 609113700 818485215 390460498 339314931 294343551 474715124 61610688 855225834 69207901 986877815 689759278 164025004 771789873 876504861 787892126 276744262 228192329 180550635 209534242 107035513 342298984 156733718 723518717 964577910 257647426 476453762 20891613 302518112 868602675 24840166 166625396 435672672 672031569 308595723 423284688 730990365 976639240 910275640 172155055 683565 608432506 797238950 283436077 29188331 497417303 710935992 920780397 994086717 550675728 426133289 717157762 431827675 148353379 792699079 910139242 21538742 546831483 280319804 776095607 183071098 228768183 674974369 798879659 519453068 458086788 649218841 511486152 802200581 786797268 765320738 538085508 29767942 752835327 735745711 446122054 928868070 262796873 400980388 587781452 354145352 438563223 50620322 493119202 579280041 397677950 558479407 269873474 660847102 622678850 604428033 795941500 117585233 565383298 390888811 133885296 118238535 55283137 763809504 994969064 697131191 683777726 371110127 383809216 909951503 787730085 411638597 523658691 846812858 13023206 636516578 278916276 613022424 617638579 263914032 122946330 368266787 634212248 1530171 503045029 145517826 182981859 352182172 74588221 840185833 507164893 142994244 496301937 857558887 951972314 653528246 236737628 432598740 236699024 59159989 594153504 696067938 189550849 882010285 682562202 746313043 942255723 391141820 660875433 959012171 430489744 149808136 906225607 66180995 281574115 942577192 399058378 60429220 55727519 702375378 842714185 505523643 192997411 681526995 356316188 7060084 638945541 824321221 968438463 558624024 64223664 413333892 216404650 868067615 998554916 471777124 571468302 356870750 428876920 153050306 292158256 153777609 983654600 446774830 147108846 136177604 180609082 157805616 90176101 316366937 230649370 678671593 149467252 820303830 559410423 532273184 710594340 198222277 378879153 934156806 102488192 136084209 595412299 169748235 231652401 104196444 703581664 794855730 34228898 742016490 312798563 61681435 74663222 971222711 950455064 866848498 275129876 652045859 564338620 233508103 877480130 693235600 830931246 269888770 428811517 793188356 155087308 720751071 586661941 380055341 446489334 636919805 334232575 435680546 634013682 765418369 7642504 591530062 239576854 615357589 37442381 637360306 14646055 590604708 877750828 365477843 419041336 423515216 956443661 856908383 248818483 420515202 425479086 55878357 777513305 927810999 643153053 880692272 951095246 22069632 658459340 669357755 164838023 144436145 134946372 311643920 490774333 560212782 564589575 796372980 104828897 655653247 73423214 495380827 307835936 469853032 889059150 809904602 891097170 241311410 837654425 282455133 706613232 851447946 195289197 733438730 200118764 571610533 419543476 507580793 192637938 971105411 116938210 223057745 925907630 105755869 706017496 322677598 407978567 87901674 755437263 731035363 533955892 439759220 191535208 808312820 269009373 512567158 946047618 948664449 159482168 825090256 459930962 415999665 901539086 848987206 457951940 346979049 946793367 8196698 124124364 35170056 659424441 290935634 157699569 425062919 443039229 886882016 508778270 115964784 391723828 281800256 432318434 503571555 823500949 177794369 462215436 486312856 129090735 709312399 63854253 256176191 406682458 148431833 100950993 582764942 640440328 943615449 805095772 697194030 682907731 222047017 132080068 977710460 344940918 376686740 395053856 849079499 507077632 602012559 201426514 742779803 631027590 901051387 203335994 51708597 788879201 854425900 703386609 761417117 267114884 810739531 685407664 420324053 191284105 845271491 92279283 767176488 945388262 291317864 495126864 297076979 197194205 994979374 820292424 371499599 590967471 903681689 751727865 387806233 866759986 525998832 367723417 527894233 892389075 240217386 934383388 308011418 379514040 115887021 227588528 177800765 832573721 32845475 451347545 541448581 629045168 277509920 656308114 944209312 47919187 859666181 435731323 328740310 297504571 147330361 160409097 569885869 496556677 115726796 439996695 597836334 252798744 517147863 360100571 988852951 128791871 774487443 521964594 400831880 35688290 626771048 827010160 413148577 697824136 101823529 493440678 241700045 168643060 189358947 808630130 38726337 351432571 356819931 70397841 753992136 379960957 945885999 771369733 604267468 723402759 906899314 438381678 699218497 880567572 708240490 531270449 355104958 408590193 698367367 512750825 367022441 908287549 228992645 39051358 184617325 704855641 85414787 36135204 244960122 367731197 326693098 741208557 439788354 350694484 249536433 163940933 911875172 16406901 193758886 975356657 279569579 119544653 135815057 591103214 456774627 743019681 951703319 903262253 774461206 355961374 228294852 61135894 454421810 666356832 907515941 235483439 153317358 745183583 438336486 645807638 651869314 452305749 918169618 379870067 145308268 191047353 601000046 664847245 746160439 566387377 606390521 396160445 200610368 80289387 675363015 346748759 148249083 818953874 29902612 945509585 284022817 13256517 795669836 511181174 258992755 62846476 727724957 709157681 265717403 993707291 139952148 531016386 599364833 854863356 641719540 523136110 942086259 914021339 585324902 223717017 190419990 432154344 686726104 446580966 357196074 571495911 621574206 282546758 632665771 929974832 534403257 317403011 948844849 887530259 511613072 743866634 778201278 627556906 649091822 738597589 951973094 330806286 108807233 325609337 161719964 579153501 182262815 137384334 595542719 180767600 77836425 244065655 365170893 739127929 200413274 60430035 808964454 964745273 37607939 666701418 630154414 788067747 204820135 883224393 342540915 708177045 439311950 67411213 398547368 143989387 494558379 446414015 680888974 332160004 806151883 817920210 590209986 613516949 63546863 890174753 163421100 951146659 105666020 800429406 242550514 772804855 534862671 408684676 527861740 150363488 538672764 132259634 787716123 457554198 696042676 776571768 810946098 503891981 686946142 848936915 738645132 837198684 484273367 664806714 29421182 542099145 193869918 280958800 30454696 980594851 577248225 965698998 216661631 133186951 394169964 464964009 254460038 620791263 422489038 923682500 416980005 145308181 512534112 679401899 618996432 563649899 360182954 804905592 790261496 226194606 166453491 625586035 551803236 905765398 781445618 783932692 120292487 738617293 788386163 447150235 103527850 463451792 872998779 559656568 870269334 288427668 919286651 252649325 565198323 518873219 603860918 62502552 847161600 451921821 723533865 173421858 271277690 302696553 527477505 690159396 346959611 10035184 437794252 587421800 605065988 626869715 656874869 236781580 989951792 545118292 58751249 81345950 420351290 837956364 646482565 618311802 652827231 105363697 881601101 701163055 281409965 205511285 145382433 53974137 472288278 714682593 474712076 856159353 504890563 965700543 825357601 949528687 839491703 405105625 27244827 423415614 248984417 135882731 984838848 912494694 286222231 840272200 241185883 17651726 864808035 354561407 246639104 357256067 886980460 762477874 677276903 150135529 564405037 987147047 241457237 265954144 673021275 985592468 291411643 129592986 305418944 866055540 659281467 742054183 921899881 858590679 309088424 465433841 993391808 723244275 646240413 342222640 980844847 449305275 53305522 367398481 704274585 298226590 260413205 186286161 283514341 570679986 555357410 700220368 134984491 103155896 679153003 502218872 18985193 992558431 878889723 517107619 138288334 837226765 194575168 759545937 582191864 252847153 184550625 711886865 271448589 45063429 328074991 802963760 774555230 50757727 768605711 557620772 435466149 423416882 537343337 530044086 541930036 926646605 941433722 465245742 326081614 846783144 194528435 844295668 596247353 862063258 493871810 746400314 453025006 518127807 653904701 577150639 228430646 816784944 561978263 941678737 135639671 343834388 941206865 499241977 628993477 195833985 280359681 901136000 28670850 926312885 362270297 859157052 620601947 231989509 760048918 223172855 842149551 281597947 686269478 183424069 732157210 741357540 122408397 216178061 285906065 622890429 293494290 829499084 311339168 338607965 549731851 369859370 855304897 187578865 484674444 891508583 100945307 201451156 463706461 346495347 431961476 247385682 972797536 922465741 720640114 337536202 78997047 437571808 26702909 915644198 553349918 162995133 384437513 765991617 714625661 620057900 102364335 936204391 128083993 305396500 637556796 209169841 321823482 261731376 47615291 769040464 101850486 214365475 101387491 238232104 63823235 885341597 348441505 118513130 768580664 883370891 979911834 817337018 75922112 538005154 601544349 761341432 624599507 63884463 508025898 830920572 290026197 284628837 921618502 751691480 951575432 358386688 170213788 272964362 304719735 524427369 590251121 198003727 652734133 415494577 155190133 351590809 988247125 777502585 812053997 983807675 700117972 699267143 907876740 533978813 544533820 11121475 101082236 544634275 70034108 676360602 227050674 504635316 204330301 458192013 470695366 843110975 880202872 650933298 753857588 463703479 705160676 751759128 731656948 853247593 172487031 730121321 25802232 286991155 579693972 73518681 746667199 53054771 456544306 311465850 156952919 59283967 586542821 380307711 932113610 672341539 485268020 848666311 987436693 509078104 672170713 313649499 263394408 461250775 871024090 691632184 817070597 566492426 241657864 442171654 79360111 356855143 161911877 16858149 413591135 394951215 773645457 760558833 918572860 463283952 66267366 644920077 371373432 718316904 382810188 968042013 921180346 428702836 791459030 78238740 118774394 166736444 324603928 737904823 324138005 548359760 935957520 208146183 160595658 365502007 881823439 586169287 439652583 491196520 2844768 655619902 31995222 156570436 628061088 618647227 249757915 420678797 851469905 569186996 229347884 711752745 791102467 679568757 619086151 282314617 719153607 176552379 322815889 911484716 603155933 708319082 278600481 25195055 530482268 675215921 865169340 318051547 643841139 416697824 538481926 909800834 174602611 674025610 482570214 703439894 721723691 844623119 255103856 30362850 871171920 448589443 578232990 359207694 793638199 561501018 626488953 451945682 507246770 187971061 687393862 56105520 672543459 161462030 360999013 872224041 341264851 923091355 378637918 320621365 820691511 114537733 57877846 370037545 882009226 713025986 399264505 407250890 74602518 823587587 55239221 377620372 752347455 699831156 59901314 487872269 471023213 294465205 742562139 173870679 344872393 105911648 940770663 218135908 619097836 782224783 140906357 372242404 958142556 551417660 567537766 912145321 330102298 978385621 859251987 115987554 206346262 274869257 907895098 928260992 567340858 717142981 52575328 659847946 35959609 719449361 339462157 73355297 528269097 646217004 897823229 705731595 550522252 793347108 292634599 286905269 932585788 513876678 916836326 32837627 506435735 978632559 984417986 33451925 303207651 652426126 885440593 197792615 580625333 635251200 945993397 967454470 53323106 54328750 949883975 313653545 753810837 639588243 257923269 521378844 909722153 272833556 946926293 342248420 726413810 850245967 454378906 599037160 976035388 674023172 837855365 232321619 861562777 967425684 985413677 96062767 755744981 268499889 797492764 556969653 454634194 812133837 51234756 375839964 341459783 599327397 256643944 932752207 760754971 979611142 859583268 332799189 237862019 400485913 872736739 238837182 386460695 933054288 516901203 351190049 708097239 212241133 320499597 125728568 174096848 194265089 348149295 285704890 890792438 936465074 23283111 983991210 867128469 206214153 350596205 174731228 293128392 230741318 526193406 687311202 994709937 918063798 46048475 821119873 666029975 421241136 339749981 604007049 385833694 940868157 535680259 356603684 240074344 486834939 715246777 805645943 518109807 227047251 76216586 194352700 352858706 623493429 811096891 777043401 715412411 709857305 557562554 766635925 920438923 285182300 467028841 575582120 846923528 18091012 751975082 155418193 465279777 364230293 725610256 121597277 290790350 62709895 970493167 539280636 400934012 754372195 120936846 418622920 724440700 231022429 94013422 852808123 795860667 467613364 971861933 918473950 975310727 477846560 238094252 529740816 751382419 583178267 470690587 134075945 256434399 46327148 208830235 225112407 12943531 469921267 498288271 911013857 889068203 452202445 427718244 637401348 401043408 902430445 474027238 171628077 33144860 401522287 788688215 151795339 109583212 363003929 111461055 144843626 763261130 538801119 911595528 797051601 805530676 940809036 370424309 744437872 740439887 325627403 543022870 333801694 976173786 907897080 557267824 187503293 153342848 418027923 261030001 932779434 878065681 106529834 420600035 837171956 829631820 609543381 73175500 207699504 393388878 976423583 969986946 359873110 871145128 150722907 934364818 991464606 60728354 898855670 877465591 32649162 774155191 21664348 332480934 91195279 388199034 572449343 939169428 560846603 471988862 150632335 602448477 12710960 341398438 893835781 800229452 504818947 61992886 444280989 404843345 424607581 395397591 337839004 314189781 497706384 593697024 728462932 90721020 557483229 192007057 1938229 512172087 293061043 623969342 526697178 262636749 715414742 286500793 382270258 247920594 758500675 809132112 193651384 114159383 995898698 555335870 807826999 469564033 736898250 106003507 933293999 977296316 360224089 798950829 563715371 6688002 378375915 737630836 230678644 164604738 439854875 41305190 489723359 915467951 89550018 971518113 197508500 263303581 894583747 726940976 850392789 393216623 679712484 674955324 551667442 176245903 304552568 989503456 634205746 633753606 297771691 597284179 201087151 779027542 157675986 478035788 618314192 830833757 8881606 3925380 423078707 902861414 391811166 865645200 614605852 8657524 590602778 954839710 986580407 433147332 235952628 83596363 634123573 297347415 386211331 805781800 417439846 79533554 865858539 190819979 366016442 632677485 295983689 602144927 868629754 142647212 532032308 430143183 387271200 152305539 488754006 435489723 142500441 232891430 180551343 53068692 247173385 832339346 654998439 469013965 754461460 676525385 340594318 756888600 656966359 144391714 825105989 759587157 931062471 169722527 310525928 729567609 246242823 920880846 175026861 815492817 408666515 411970049 208516414 446820183 25271080 839878999 994261063 175760012 642072825 202047186 831399594 28237508 947292671 392273892 223111191 180648822 782967075 27312628 693517638 591036358 518642387 486766450 990552385 590575073 402233097 347090255 767093818 287234533 893971187 671749954 259506462 15545041 946537458 333900429 411173831 298936747 785346865 705771348 576958725 332930373 57991509 93008383 517542077 155238992 102075663 65661102 312922285 233827837 188674671 351616720 370007107 82472217 200053973 800117426 331731714 625080166 390241871 667596624 391835326 332014215 367347679 944259391 919460174 346528241 704468635 834366355 61435235 642947816 373156125 59386820 446826313 203378023 633749382 728814481 805210726 72213087 604005391 529384630 174668136 374753116 175485601 962677580 317578696 84185369 464303486 1035075 459735240 168296820 349266066 254817437 515618517 826565576 722785655 641880928 209167419 757307344 700190252 490005768 219676933 203584597 355795400 885100222 683780156 229176387 48670503 323321987 802774724 846793159 835801081 363019452 855547412 982698374 870323600 542900627 270921755 899725660 556751318 586123614 219276084 191951009 163830612 792236402 938376323 37138446 444722201 840076973 435379063 288410084 230559943 490971336 706835523 901758904 918305778 861731758 697620530 978300345 520556501 777903065 235670372 297066539 258852801 241458130 196923675 47633948 213780476 153460625 186091447 296401211 246101038 581428793 840639664 114830663 601665494 107561945 132387424 57241850 376271353 536623284 261240165 482623463 243120410 605574180 33128662 685514568 110557127 302543475 916429749 57770848 27669380 771850810 915796832 231964526 16919910 587581809 131311181 912836547 911186136 926902653 560587995 905621449 533731600 504349113 979400016 159116045 454707577 771165468 779636804 535848942 556548446 646672371 27697110 610659470 990928537 289631499 21578418 349069531 682879743 282588024 414368018 240565972 682690932 351829254 774197283 466496547 549780432 130626234 433046771 988315606 266385788 635183051 847744324 889545582 788322713 170677889 336297516 918034557 980768242 272127120 408031422 427318742 11524187 595344573 924367441 726443053 744442120 570076931 183408268 38109042 521366971 245632302 891094204 182671384 404777628 728322538 517902602 356978585 859658065 11582663 707731210 572089928 379511311 225912066 127168609 783496620 874129988 457087094 380281210 673066993 901904415 880161099 441270916 274407892 185957590 651518189 856002177 1784331 923547549 250444700 200037452 716096544 312664495 210979545 502420574 681551111 837157539 686939978 77994863 103235859 371100161 828649825 776586850 607896583 519233529 51849882 564704415 802050663 455871989 647710788 826565651 832740546 369984161 390943348 533573948 588468641 241091916 527430322 216692981 875987981 484013851 392673036 84442864 972801031 614130431 292386319 966394552 870881321 6599785 359405993 697138590 922779782 370567219 774753626 723563715 725721150 901591543 300187141 252954252 596533063 863717437 583629284 95600764 927600534 500605194 500516427 661456927 122746993 336791232 310570420 954017609 416135694 934767962 560196536 714335999 734199796 806158263 376179325 622618489 292057251 694148413 731418084 924933890 945909065 262922474 905179528 952905537 373471633 953183612 838396397 11584605 854349860 313053128 385136506 722087314 458803936 319226579 876098311 596542999 748018819 688934616 929900260 211395790 27319105 730072376 652384560 607652472 201880288 392392607 347469255 509582192 913848341 517215899 705960376 767670270 41752946 105168117 806549827 358948835 535328473 381894936 396601224 441197294 415783057 853744786 533322194 890876033 236919382 404825917 308226587 931986881 393841556 136530179 861721573 778350952 719714587 539851395 469290914 318536883 52087731 163782747 277806702 82716895 59777506 980791316 904172245 806545987 857970110 125559634 275575953 891484678 503523829 848410959 552368936 736491135 765076189 425328957 224267571 809175558 474659982 835011935 495556075 482459666 699245359 198592173 878019386 784321644 100751691 645823517 955380091 456988963 717072814 628506602 730520490 892034001 626813868 894595915 532361014 949644074 25179504 759417477 962017350 190810799 386103182 877257403 205902438 44483685 713922535 449438757 432966260 521998872 546702636 221249145 568853129 879982641 738699182 342519902 938642275 17638759 105092277 870770025 337630307 14487506 522148575 256422612 816570861 779377450 427722008 150620787 299880822 825138592 674356879 7727309 120348411 178289284 558844325 479315045 173199309 61389743 327800541 111211157 637575860 884237792 772085577 543242555 442700566 700457851 957840127 916439079 472645218 702256736 943697861 89787327 838664338 343386878 969187419 501397650 170234569 932822544 579678445 856504110 280249764 440881670 469751622 565258057 506466968 823076874 722820345 37613710 343104661 157028995 577862513 118967908 967363318 45011082 857381084 796868124 828657057 56740612 343523809 885666719 493294654 839917914 72022497 570498824 81351170 70731347 864679818 301136910 642998599 996526517 948586272 802272863 515467785 96121742 265158125 547072103 10473444 544053991 766266971 491620939 564952443 124654880 527803335 801957157 468186965 39992896 348157546 726912616 236583468 710895068 512463319 39673496 890582286 498328984 222361963 961034180 383063947 756949732 54287643 243414751 619986199 885937778 622450437 57080897 794155677 727796220 428746864 155159144 634338958 723047230 323802635 567934209 361881569 858140496 730918449 102218579 241060762 788441333 183847971 747062066 870482871 661222105 946958291 121912229 428559850 175961443 708372468 719475973 792402240 891801717 90525856 344661475 638163082 191799126 507365123 787121352 798820183 629889841 771408244 278697937 729025595 312696111 534074072 437037310 122637634 876524717 647763671 735073728 783408520 30170868 441233166 660680534 882117584 370683210 52983247 885812301 764271675 872527662 37721548 539996462 288894775 366081164 989037388 161138381 676870720 961029713 413042120 416289470 136947121 780766922 781217854 22640723 604609476 797861105 375653711 481636615 368986276 221730669 337687484 160644034 830612939 67491078 713071027 486262018 519727734 741569134 270531183 804515260 198184964 302056406 860950528 879777361 359913347 243270294 997493095 151880420 580513934 275517856 437431915 478258741 218338184 758034692 945300567 438017577 17882025 48959174 130682265 506958136 49889807 557622674 844741805 103073257 853883837 8017879 843072105 229681566 217615297 815278170 631442915 185821347 91576920 555361803 288496837 87502734 233682108 368716192 617068073 365975617 194266702 613423422 322814912 861879802 237660789 992228734 787285348 566570382 466480377 83367033 188654694 263390042 633768541 588630693 155586130 435810751 699355683 517360327 633776370 758592708 879006290 223351 433116085 676862492 659892749 863543287 979144542 944069194 117654739 530901115 625422814 758979012 122243413 787113344 562596318 655272761 755173826 9413129 422888347 72234919 578396300 515996770 677928836 667347322 301819117 745409460 463358555 153221484 425491767 52501027 608467801 97333728 568198561 506214817 582697835 278907155 415669390 632524248 500361762 178894155 332328432 884613609 924473667 225519081 667741668 622101566 436922628 144531893 706889034 295780831 422662330 367708631 537557755 472104205 64158616 923506345 340724978 318740608 307973860 780143239 870951251 975578231 264328488 686626413 414258793 59018173 614610898 192222974 47280435 987931355 115856700 993650170 769655002 854859451 254934035 962128363 462128042 813673419 600207844 592683801 15392504 511704441 371657862 943713715 317654219 486729398 414302143 226054985 894613853 392806808 812696838 395931536 726450078 812827678 815779635 348666971 361696715 121288344 282550516 480916798 338652064 113049370 336741778 89143141 277122142 876755243 477504116 179491638 528119797 505516091 783807606 244096465 550909292 981582874 605400095 212744984 217500853 448352811 812149546 524870515 222090270 44496444 582458242 353514921 34082693 87159949 428353845 914525678 778557486 822081334 651614941 106221007 87425314 734785044 533518803 727890644 73220636 874416217 277581572 967060540 545709423 862159708 386411756 514977886 825806783 34364007 456275484 463852360 668738089 144144431 461039066 207563054 810676541 371542620 269252760 720720251 518844031 198866674 433553059 16567286 434447505 24744448 927215593 805330301 298335302 459235671 40110378 929311074 801138063 84149779 796529236 677955350 396597163 90565119 213891778 49395698 231921598 955164099 153914652 490401517 464712277 954037700 48266991 716450553 85033347 822661554 474132430 751856870 663614007 970541795 699480979 777086098 735070429 512296864 77394861 43810183 209182428 606449743 926225257 980796492 966660063 908724319 512607048 563357280 902648912 387593659 790543992 977438721 446815614 1843195 395549199 193988176 256803203 832257766 935640822 384936270 936159124 820744770 802879734 200299880 598004829 460396110 990778834 785712866 441794753 651912483 959146657 969137764 230602737 104108526 137941434 367727947 7756015 131420185 828149442 106450836 373889534 869632979 503996564 777443865 334603736 678198561 919720974 863350462 511957767 921503351 416242979 337606312 90434352 723381817 586510912 488587816 321818213 811835010 968385100 757609376 33091098 653361644 189118276 789667698 965712818 269780577 420298030 775508649 814602144 915640258 122524631 962571357 771511777 122255927 615483004 279060615 681498842 224601168 796280384 295830347 174500414 918675264 460678244 57577582 643930654 185349996 849362880 499338418 778439171 395237170 935311822 607562961 597781053 736739817 513845465 245295375 935469836 173053871 376378899 216686258 931322628 304963773 159656842 511772503 664087346 376828595 84719552 392536676 708428068 174777974 86639337 108006971 325656529 595880614 814367175 352024699 684005121 698835386 659451888 648549751 432135354 501984863 211089070 949864344 889592074 9522784 299960362 794109702 184249247 639723311 970355841 107696763 885843197 169780942 953312158 901626303 226896964 342221508 174307515 102856998 790074090 602151522 404362821 97858691 411065942 799542235 185976538 102098707 136198600 524097681 154973141 496122526 38089662 467775616 392491271 917963603 960108013 344476465 55736778 244141586 52175406 944419210 940915 192582078 850122651 926650216 594946654 723329823 426182849 383688615 763145201 968254498 200748315 798109749 531149443 231922017 828899500 280093884 958739270 397207654 599564218 709559133 357893634 243938023 562596159 12598010 2551476 865609286 733638907 853312567 140263178 104720700 372064178 402340606 39740153 57110490 226213815 860922452 166458299 632384257 871678937 408846525 718594198 488139345 439250821 136462335 388161001 897662236 998709451 436881920 879224681 798241583 760388114 217405324 288122463 189674134 730585467 919867220 106985188 311749134 23224087 507554119 740741536 916184027 646586448 783042461 418891370 380826921 631566665 783664925 72240973 879274990 466001707 897487228 688053736 325552565 962240083 163796122 131536930 120373421 431615410 390899089 513864813 246485018 395929378 854666385 699139646 786110006 206378973 671113327 26470070 555913224 592772461 830919493 292847012 395383036 734894220 29594516 604068713 518901897 715453158 379294328 574439003 58360125 228919733 102213306 787004530 134992207 495650468 404549035 565908429 4819043 176244690 754654136 853970546 154709468 301305415 44190359 544841503 814091780 434093059 897818725 665504591 549330149 553481472 89914455 268652047 685353499 636520108 580257103 531133029 288256148 602464333 222390358 294919829 39512476 623464771 777031272 316859011 328286147 744441583 917052567 756960419 101967859 951533692 405958761 215151002 98597653 273076583 405218818 407569580 976333055 968913115 153304859 836624676 49356633 774356549 636300263 892227633 554845405 889961539 380361119 118479181 158506030 889262041 956530572 143826887 4891256 867225047 85182733 9427097 131572624 104749164 229084719 918616355 642412475 416023424 906662728 418465749 53742123 68016068 567008169 479914457 680987507 709791358 871958529 3074668 387118618 950902940 521949674 512706506 240277329 154880045 502064755 335977059 724524098 351159293 524071550 15912325 945407722 967362694 517223418 566230297 127908617 545003325 410567525 536845532 498810229 277039168 43818196 317600371 465138068 764958105 663767387 676936454 506527537 693648054 38295450 711073986 530948520 837436122 379861246 896638991 86723175 356931807 36789406 896921902 465455723 962008754 835042220 141903590 809555898 751365480 558994485 239621778 138889879 491313139 100061810 791878070 623853839 821852717 165578256 832068830 748642774 404802712 86010995 932381477 826257711 397311834 687465083 256042004 73114804 416711419 309866014 107726733 547292256 430534059 34749155 430924066 993644638 412444791 259763592 57297206 649755161 314942632 601858493 121633038 272379242 709165498 753701760 94347923 685759595 265557324 727757991 635396568 690909099 766654708 723976672 455723173 299044018 347929019 233833242 358771134 557181902 350368107 420212857 887940458 282735779 493275979 698654226 70308774 742708712 375969455 569536082 804908522 94641252 825370697 145663478 919592548 283380220 738789974 458273911 921727689 313272606 191638280 7789195 451446164 87800495 541190542 61395373 641448950 418000929 837687094 391586061 403153291 88086283 768961313 38985224 845332285 942683284 854525226 518713311 482756934 490812080 420461978 716856382 44209512 126775700 783166608 872744234 637491284 19441171 744379111 527441575 978528363 312787699 5121063 568961482 599609703 397448411 382441041 27644182 809941656 333549573 713056818 510660889 691664999 796714004 675974328 551772306 927082821 104283022 358287149 118307236 767487515 617546540 140020096 748002070 893869565 956093220 791296411 280624067 634954453 505213973 985069435 454616100 518475450 786010580 50410052 410735568 466468474 735461127 122283697 511174314 286018022 293979466 251497809 833857536 649791471 25254171 134953059 939823549 138767982 151781653 641606804 314276913 279370951 732190401 795078170 445874116 137280150 808966662 746310793 157071829 253763589 983421693 28133460 387956375 318980639 383474527 242716322 525588621 721053191 294099354 174716895 710688893 374665509 546897626 822173858 832240504 292565712 773382707 168056973 205929986 250517305 759852301 133324183 533429973 712459864 203143403 278063314 796619542 97647361 770369147 387338930 980733165 273256642 586257362 391534017 718239283 829606360 514819665 122096672 950041589 514714657 297931243 835792992 315972743 377699936 506919605 462941387 320874150 669378915 734411019 98550521 461622761 854491421 800289962 444924360 632089725 325049968 525660872 476784537 304913904 910099324 104068211 65988698 8806408 562859345 167897215 392022016 477265006 774498515 340580942 417948337 736523065 214997639 782714553 746408215 145598683 296583754 471502833 559709434 292277629 217918783 602210067 313864151 42290188 71332696 94016310 289521568 625757597 187566688 506822994 855918923 341362694 960482991 190609269 84201455 38810590 171498045 151394786 618081699 296799860 220721551 565395252 583425331 151639234 599150219 957760841 611848347 539977429 508045655 718375200 96913064 80622977 88430790 214819393 487316650 833105628 20909223 515793942 768729340 806939145 301098951 101782063 654914357 168753912 249732238 933213622 313013333 721824339 651728635 328608676 536950153 466879363 152484234 74136400 134331997 495651142 922176972 883657215 592734171 50367633 653752055 104867906 134124964 593487270 227663567 741267346 739919271 367704526 683777862 97519745 415386132 337321825 558186953 134244986 398439295 635105802 675582809 532270557 584391282 368316192 814713369 250258564 562619883 959991646 945953936 580729891 343868903 791121340 509934924 610327655 954064202 186418464 341678342 92091619 179674894 833278447 394466654 696137783 141100246 447514044 455776210 596123242 668274934 982429118 297050181 209706807 361196929 812726988 52983497 103229986 327744827 363704394 423007126 739310548 301942110 726461065 528799604 441005197 824451938 848903282 151072326 592680454 236149632 400776848 11776583 529485665 177738664 829825685 530598955 798825180 164510905 310536707 731943183 780745129 258526783 502614878 215591771 984618932 973047136 878996578 429634125 66159749 369051620 794535187 919193213 961580565 181425647 50708732 394704325 423740923 188782257 554015103 986530230 467803272 534811247 614932475 658656871 410706889 210508821 656434176 633995696 490644864 349467604 910447418 30636899 699976748 231626994 587237732 865504572 653770084 397064476 89330132 633387873 796554439 218785645 186467030 41228907 307071167 798920049 940231754 910348165 381406039 433576043 726961496 599568956 386394054 470509073 137098263 411297644 904208749 702511521 751678848 945495974 503987075 433473574 879578851 432359070 737036924 239521833 132794784 172910297 164821748 292443820 242259382 935582313 938874910 219932180 908332725 877721538 774607141 122288809 148891348 204564170 636057134 973460858 785094449 7961044 786929249 78239568 841877363 88789204 597427949 389463182 167234295 846507709 313270903 897356610 506430476 416541477 917555780 242155897 259742539 135483669 354023101 902657213 488415376 405324254 719473378 807765425 469220548 467549039 221236853 463832350 467393924 630994955 587015144 377299453 138430091 662389450 775313981 61783045 741714504 115489143 191812601 710058599 529812976 907724696 246535343 547473298 428351589 820076958 24684908 412236309 621681816 990785111 314332234 273387841 29632358 93126681 417026472 513332644 296164983 377821711 169509882 926518835 259379373 570043805 56053099 536850885 813972713 750449648 59388926 488955225 369125963 297350986 134603851 943378275 486924596 320356437 138830887 523333626 243165333 679132367 211425137 439199290 757402783 438842195 560708813 681728248 372837064 150765557 578961194 186360518 389216452 91216271 122281313 419410298 560479287 576522873 967053350 22523920 203099777 20317505 155717429 984258294 277170597 802610012 284433846 354199485 739005398 711373681 10179826 625563639 976205420 548756349 657583782 41140050 54776416 15217510 573151574 89863840 84135750 161089716 32240806 812916478 465473459 488251293 299877244 899654672 168916040 799059169 466872539 179217128 827386403 152905754 349306676 638885063 217440346 891402686 512208704 144976414 591367963 611195099 947837101 112930853 526032408 758193784 167190786 527540521 210287251 820117789 890025450 933718471 442531727 726950766 160971409 674118203 864135360 703872292 401588936 347766373 447266218 656372403 350770183 134226997 449457668 116587416 236012057 314390818 732181388 814493457 554026570 799362049 539702948 684107836 433892354 987359925 911700065 962465529 889223357 279294069 705079492 472305736 937106470 371820474 51499297 481775491 516555021 587228407 950849117 201715440 122866578 671500396 404278675 737742221 312470893 251226606 861070728 997302458 374425339 553225935 527615086 684121849 86684450 470112957 898436696 565528899 311680377 820310234 339046000 766017973 278736946 540325864 61669912 82985637 852809584 770303363 968785088 160419202 461185327 694795308 268443351 229571487 124792328 528469758 587502225 205109081 906520203 744863002 461499690 421878049 527466942 831945215 456596597 783956960 15335076 734907338 327933342 501694549 479621846 48483496 890970380 571094232 774716360 177055691 731618501 15910506 311327829 373903359 361537874 839398869 283356628 946334892 203592930 881058563 502759802 760267378 386551288 672224854 777306149 320441342 396685013 834146288 859515651 708979753 440422120 230438960 572915326 972509811 642228175 620683556 30334404 287257637 101586615 447408118 350368405 261616288 895174210 124400083 586407529 537429944 817398626 122116917 355894237 227646192 175882299 725598423 335268981 948391666 963323721 852138237 975728882 7401691 5663824 256395214 357322172 463683482 414460556 979575412 773581072 760184037 284336501 717118400 416996787 326711988 22434760 345321309 480578257 689391317 144460237 102226620 950963492 560713912 900355591 615558671 308155173 462445738 126012688 432102295 376477162 567856555 989892021 174011763 854142888 855065344 230360469 227070053 990419692 668564609 814628301 400328435 726847192 509354801 237755480 376318582 814185761 460089391 599564778 737783784 513759855 271732141 199161451 632316842 231837263 358439313 886020664 454964037 510916275 672881421 657533010 178290391 867732019 309899562 743637004 352656808 614177344 115145071 921163914 303914726 716894344 856849643 148889085 22650010 49347769 740117212 128162997 815568877 176277318 414489900 764659474 801844082 522101556 751242515 849572458 695391752 746003531 255962929 876113714 659654138 273636036 512696442 569654662 791490803 180280630 849751094 557173789 613472217 728796080 74851377 22085984 869438820 203369044 189587202 604011663 647128632 776587357 847593989 512137549 559083256 770176889 612094805 684474317 755444638 493888971 131489688 572064072 372082847 982921262 709315121 269228102 690879167 241344029 379455997 108503106 634946724 936300792 40365433 630882128 428959769 583814284 147420375 464996963 438633833 577766413 58540155 97107363 799599006 62361480 255959643 823500254 854818344 418077072 291656369 381844314 661672289 616876860 341084564 644513823 82173270 213977748 702415508 441934675 294776213 208403620 570118221 83730588 248927085 104671868 665106435 49684369 626431868 490067577 754003641 411627152 250910299 365952094 384018674 436500487 909930350 974452990 940207278 93764577 211919932 846480140 923174153 680919574 940654532 329299831 2134704 968595512 617851939 437734264 121518584 832159057 540187387 461728094 814151872 957070961 141601351 258227949 430640179 816389961 927484582 755715168 941531410 842431606 343938769 176147866 825033915 472553691 997406493 314449465 11302872 387670512 251089707 4290056 677507627 482937005 337034301 669705214 182726212 927731631 469552515 114059162 959085309 179072688 197967138 170837633 112815996 906968701 128060153 400152450 834977268 241663673 875712319 890509006 318971027 349680081 542160038 970838916 803079062 164458586 192954963 853831443 882348706 380925839 516756822 950454000 354598966 597502223 749602036 270019892 5214051 647112453 74278802 869850130 604851539 856985876 708432257 898583559 774940961 971677960 164863824 926478102 814968880 720596069 380407817 88067520 911297921 942665107 638311232 267684945 634130335 97793219 553666411 673801694 689728717 346699633 400401228 656481220 907763141 203871167 116914916 704690788 454207475 286314760 99502570 46814530 300828618 437809512 615895958 923234075 505696326 591758174 522321657 562578234 50343046 64191589 12440457 184502227 895720415 948884381 347231054 18736156 333818461 582605452 387528807 917742478 222971761 250483868 663409825 481591057 728208820 222330257 731576977 610116268 103136381 844601124 522219696 506076306 67334748 640386245 128767371 352269943 492440102 308451834 676733716 587986662 774921913 53852620 157536428 494048172 823588738 594980106 687374734 320725828 518109879 512859345 438219424 351563320 960911376 366186844 825638452 61958698 657169772 924661426 972588664 118707812 191163048 424173907 895377695 594170219 511509830 33609989 708134315 962287728 252872322 469395721 220534489 278336710 992129900 832349298 764474017 981048324 117319833 412097869 908723666 918586056 145384920 984528984 572858115 695898876 515155686 779423645 71834720 238313823 353420490 210921095 814919889 913371906 308037075 960812058 805087982 858213603 526584777 810820752 963757607 602162058 123545470 525063747 556222929 213364911 618069026 276291486 842448668 152995237 764375923 385768673 250388916 707886986 68684107 25714403 440126546 844034211 260881522 357539325 630832619 422910435 449351653 545350905 476804071 207588371 85872102 394842766 823916429 931829814 87795435 148870769 187066557 962982179 435229319 978058239 855846106 485715820 321956043 128275241 419995937 922919817 618414033 926081185 303634200 601528555 504692987 468699237 154241258 615667647 851613164 674030623 192094826 936300060 479732188 910822946 6313529 874508436 930126022 59143509 259239271 422826906 639048481 687918062 471408118 456376213 934034498 26529050 68530256 781036645 739250622 354037055 86945805 158596737 508634560 999334728 358678603 880633757 402345123 858394516 283708853 854191840 223237192 652753413 421982426 249789057 718564723 167708718 506955984 257368519 289514681 452029201 702857594 38440067 914397867 460881003 66370833 472090998 176215155 18467455 457086897 467805415 929164360 839713310 871022571 36910261 437088251 771051039 172554073 679041345 126046723 494634600 444375697 123317371 259440684 452280500 834038399 7944009 719683987 391462964 449854210 763055416 509287835 615638460 477965782 216191801 885934763 324866481 544939020 799052256 196367317 156297568 700828142 224131194 414841348 279630193 891087485 122317599 330114070 751444675 323430002 207888404 948588892 741655110 450025007 692896815 712384667 659528710 927153010 334710026 364253405 265902494 948489736 5843840 907040563 248731413 581614989 379593019 320796362 650137387 408661208 254890407 489915733 89940055 624216347 561513151 696794122 807262318 870484535 83757337 305968484 535510370 436128203 70150767 448789716 721742466 22620421 451911514 598349275 850073632 83040321 754401061 160579222 705646488 170175366 106032701 696959024 553657622 158813431 863933905 220353542 770284201 819433610 511376636 89383330 997246515 435972612 225246141 834171657 649630157 193065433 968218839 395094438 909233228 345266317 537029293 262761139 203668496 718314947 965835750 516942227 368509762 47064707 54219008 339566954 921200796 20879607 713880903 401300744 61839400 3957526 970154896 323586919 783926589 478057410 830195294 352762812 483489656 732689119 278940727 135349201 373577052 232125785 856030039 897710537 854506714 727894469 908516435 495354273 713934978 309075939 976261952 930607233 116138810 731389236 951638821 647644752 293585294 680680329 561944777 868436685 546572152 462962009 820570960 547947228 782826439 193622958 574353880 313228697 923093797 388475432 921044004 507702645 583481816 14509143 42472526 605186548 430465502 385068888 661539306 705019194 519492988 473811280 184094055 513098479 102010434 918765241 559315812 694082043 934549929 744918788 88348905 363590166 833609173 80384258 951970014 747213923 394633822 184882551 40165242 369768239 608559194 599404495 870255634 840698505 286882179 916005310 841421206 283172454 644792484 751307496 181571360 846458703 893094245 96698823 712137692 821515606 639018621 716252596 866865650 416459301 16151728 75160328 737428055 394445642 617439678 656492533 282085590 34221202 200993044 779158288 329255137 744251143 809775585 123785195 264153291 245014287 270295069 724959413 185354919 661705773 321044665 73888171 992917464 887730633 332470886 856650334 765189108 602977390 521560851 419951621 90836989 285946925 356877412 427554611 363126197 878041540 478944321 221626456 126830700 573166681 49552602 847945637 369834502 365185366 975851032 964448097 825486907 704486643 278958037 174856344 510916817 484886604 929985210 498282574 726402939 166346087 861032455 496506545 776955016 769560674 75652438 192408199 721445635 253574348 697596370 803094306 308715241 522293943 12760363 680668628 758782817 529017661 130942518 885138168 998494122 935321890 924373986 53845457 479907771 310684323 298059546 378935383 504446432 227668387 595786869 388309848 436873327 502605065 717766935 359290590 490391004 293867091 67849623 850319733 478387816 591005708 41666621 791389054 451117483 868381066 55277812 587258673 663638073 649668600 609020138 647075368 776880036 701131532 793194058 266587981 616092308 320486466 966325585 870171535 83567592 457971465 875538938 101885569 59549439 170884280 415088669 277866045 703586469 932363527 434536608 301874567 378821133 704071980 663890172 318065269 256700840 403222442 711650533 445937940 182745200 905009053 1996133 564106623 624271694 270862 505916202 246614170 387282077 769880619 563597776 793930522 559468069 261943024 139861575 350618461 264953955 137712241 437853068 219903535 808698916 77627288 68847791 990927584 629140254 638592782 640768031 726541998 648107844 739932388 683559400 361068403 323014817 362785271 266187626 573441460 176529484 697309166 175998967 163008455 360752994 526231869 967683869 741619120 35039204 918038188 809836236 676082730 458641495 269147103 211757935 999873671 612877949 731803336 687227040 460452412 931527268 978758346 490666312 541396241 905088555 531595110 458360943 847867181 965441094 306603878 732754171 977388650 93945336 82321279 29838856 25786672 169793374 257146303 934463167 378937457 654707313 171775469 433534202 528257526 375550801 171175309 780441476 956344874 656768505 563732834 355976402 688757542 552565891 184303629 488785181 17872980 994235631 361447793 703965684 885170125 337972812 124582830 972899029 27056405 703201793 333240299 714779157 845929090 860806628 343965043 647882520 111659759 932975550 836983654 999235301 490368540 377953316 375454459 630099022 4192920 370311968 465799017 926360138 297372057 165306996 274865519 636877995 157619100 677551572 657379661 330574937 617924486 517301356 63401593 608463189 151644405 308231413 805105334 750786266 997723779 598149825 763671544 716674413 831326274 981995560 354674046 768067536 259725075 145312865 723562851 882587112 614286108 818409379 533543550 957157152 220901447 899166463 761240024 649250075 613573077 400819893 559418845 390411860 852458366 817982578 649257652 353988891 936816715 892585828 565944182 405355667 920378312 83632163 685658779 855145265 323087496 213595417 856033656 557869765 888019710 700988036 343871 140671046 185496360 398124132 595455272 998229880 83546754 34744038 906496099 694697243 715383439 380694219 483259070 458607953 918507773 312916318 753198356 531043726 696622575 86352306 431684858 478036300 330289643 322130826 546568029 459210140 145577746 186878643 180016336 61782660 221244708 920713047 625275327 202835801 760200981 847065270 142703231 885523157 358395933 24360080 191734850 159822809 281373354 400158175 639319144 832443427 984348639 19091607 802224664 172014528 504092870 805117611 988015426 237334176 717305287 612635795 908880927 951584498 920600644 807081850 472833641 923761619 130768309 339898513 883510526 736401608 980906673 828142322 307674921 969657870 116224058 75027351 116098684 458445725 624732464 751639821 883550957 357525580 328216453 989866980 696475332 119260636 143735944 102289061 406519221 409342756 335301626 148766956 609552689 303391743 678182429 908547786 962038460 842094096 924041384 37396547 464875565 633235513 888862048 238225474 871217303 177346665 587355065 222716935 496607713 504265772 459377427 805809108 250159434 263583025 723077293 988192326 803128959 341091186 978799817 738431491 404924392 662788778 741625604 466704300 346691986 372934217 380062347 795318012 200748355 889288488 217779920 952516200 650515300 597194127 939993221 357074322 604309246 81811009 703796078 753682838 828465302 816268790 256564298 62184591 856973065 710608615 57336814 950137671 284003458 391044833 454181122 713631737 788105473 147787249 766591608 848348596 129332957 684960755 10787638 120550449 108932118 8610101 554728611 282838373 232332798 372328653 155619461 989955258 204912182 85901385 107792108 606342619 677486968 325779331 414317404 486597671 372153383 1844738 202156588 267253298 810322552 845579871 323281543 450782495 957942457 872392371 896866245 158327225 315799603 629112149 678752898 739725917 330681694 463657852 789781334 338509357 569549039 871698947 556776407 820058365 426389179 95298950 465048172 859178530 833405784 535941655 338560993 95527353 470047922 809011859 341879234 708170725 659670459 134450015 455184996 275888515 385946780 571740839 801982595 382167178 863348049 962042274 42662638 153934202 601188689 253231825 634926757 613519794 522702742 129391548 963275462 986101064 642391800 646452336 224113219 737413280 286758132 500613569 456003688 810872101 363702724 886568512 272839942 641165347 34250294 972337881 107607870 491349431 619797202 19458260 900102137 324635513 496391307 81697806 254858031 921725762 994121884 418266367 925417694 888949811 37925539 993810839 732470405 103560186 215463600 148420761 506287732 779344691 201304707 648759056 849848207 984208347 778782306 405495323 876565845 385857947 280893016 182919815 826828904 285029997 80486630 979699020 680593466 782293542 602532004 200739484 329157668 484842467 468130106 746700060 946048198 877571714 39955144 678428946 311305571 648692238 294367660 918503077 269657105 622144341 606204005 485920573 916171769 482226047 944177657 18506511 660416291 617452242 412894892 353204636 777208433 186867815 555177999 837730078 458290761 526687283 9974211 559974909 524019243 481678945 388632906 989682730 90506295 862159186 280942466 413887824 241920419 999606471 132834107 989584478 324752080 797856297 963400853 451709471 269299223 866010980 686992668 599022441 63691865 115906418 285602228 534443463 60696110 479211837 337890092 282664876 972614118 659037351 697631187 968273907 456666411 213552164 370333788 84883162 156761189 688181412 153395865 183091847 519513413 795916636 431285971 933289019 622978657 415687327 3990033 467971435 814830605 824595542 681587329 655703470 225745252 231048051 955210045 248849358 495046863 236815779 709437611 909932009 861459803 889160163 162423157 884273146 10797713 618675208 889512227 322421426 182465373 622267543 352981851 581601004 468070447 475441999 878561154 277010552 354282558 115630622 7554395 521638147 287744408 557356931 895151813 12856290 233473009 893836771 141712363 511496852 967979490 544219576 639710831 9147755 995045764 12958750 712252391 176858793 691246210 8980643 894554389 812451283 153592806 517516246 785897665 389935414 485479316 294993818 45108494 119561800 578784164 8921683 519868395 936363059 713269795 518789177 661907028 288451739 301788610 460956437 267891062 337326229 504501928 531769288 958779434 214967911 283112816 156555092 791153838 252965078 805351965 889289168 122543908 378110123 226890357 73769234 462982217 376335315 524585059 130616950 388980690 780902206 936984623 446440008 470472589 838181559 982494268 538651871 148072529 27363691 573430346 724350630 623122306 606278220 77025558 356041989 11783990 570001376 927160505 30418258 680487627 36152352 310314401 155949488 934878197 609176390 514692854 17046801 241799874 433344971 189126056 274675233 630904569 505851702 169419899 631049272 562053503 823209399 552400640 860559098 357963080 927146153 903248058 479099308 130529016 404823123 563864637 565619878 184555976 263557630 561410167 280868853 747382565 116146257 662596978 294643758 409584795 652227017 74375210 358915625 846995029 651149560 309452506 682570220 906299671 795048339 924940677 531443870 724493309 709762817 155816974 913828251 753884037 624183702 762040249 581042981 692457781 217142585 953793223 611705359 886048335 357285959 916166430 205788580 702100731 73709963 368497409 814757528 746816829 769744733 96347210 950246304 254503435 981566567 828020113 511391226 363656309 867566472 164959035 905434684 237012151 989452224 461142968 532541233 143540893 930589353 437714127 507823517 934273580 782944886 543680358 447636394 7287646 149131528 759936025 760223885 289453191 897676188 199972747 287786782 996981604 543861404 593226929 794075535 122062068 229099945 607087447 342850559 279257032 105462497 272135676 818170453 979843224 589495016 467570924 340591461 175173803 711799270 519771684 704178599 241111243 40057842 757738173 606342254 946396751 568968019 185106976 877903169 694404588 771142633 32394385 383977181 974365206 111424546 813266310 873516003 487995818 466396737 851085905 598225550 766172852 538387719 685603986 764604427 930001570 177744944 988661029 186130095 82222933 736437122 298010458 326631538 348018010 356884241 840288385 512753130 88831089 474887325 839753646 550068532 862151684 452997506 742644934 784586991 482446758 587306584 455916632 178424154 225408405 307064502 32414649 297482011 463399984 42768500 92425752 195999110 322687010 835532083 996583628 544744118 652873709 294586678 135583659 131631135 953976588 942017828 643893348 86311865 338461090 645248467 471375899 957856464 521763850 297573959 466803333 714133032 164120307 940516085 33241799 34254854 456467194 84255248 695891708 56925410 324402845 36990783 64594086 973505425 1068739 801775701 746487647 341630315 579933597 826625242 617847080 42053276 729688847 200415532 253546294 813763703 753218447 486246038 646474799 487600022 591188803 968991789 256665306 615786766 383864637 890599717 919668535 962300916 847110991 136024469 900549924 393996638 846248054 613223131 378348048 224782232 100000687 779886097 716600904 799975722 97492781 163581010 973269079 665253347 979197414 797692516 263003108 435031309 858652205 496486437 784850865 405945219 548511542 514630982 770035875 459097992 282548249 299996375 881669430 361321150 762573482 280061487 343399254 411120966 346015009 463616671 92516165 821794135 800353635 72047249 280736524 129253309 619939866 533223175 575540583 591882672 697501920 186019219 796990666 516659193 146821598 437244683 417083204 796853706 283385403 513495684 6516903 109156191 488328606 113139416 160748837 89158987 908759435 290114322 731719561 280678465 60876536 244506794 910911058 967097801 900987365 694468590 445256440 620621101 475366308 610007412 731245754 809218207 500713905 385785548 228769681 819865897 6165271 477225714 976905110 647764498 737371507 605422282 433372210 388635196 748137909 504536245 908195355 668269266 659991670 767430274 203118864 632966345 681392646 710450821 902108839 726806663 261264102 985604134 858539844 159388055 845367507 468751428 501211857 972016739 251407586 690068149 17948584 663540563 1032734 573204826 904087592 549096666 311742357 701905737 233838633 394218067 605069009 745885643 916502508 658291407 692919117 920496001 789057594 525366557 827263593 938680794 15875213 261162905 382268352 830583765 436517833 779194657 432876933 951557442 83834875 919997446 645158057 416426966 767163516 682963455 202706250 137081072 276794176 504471757 473607775 179440539 860962620 227168878 211948040 372720476 617998577 205479429 402313689 230053168 114965752 136841373 807092604 154067289 472657615 940974149 839374745 63977307 722719432 870221175 333179684 565254627 986211062 772732463 87211741 737406556 714530454 224585801 822766795 973031575 350126935 82973370 996422828 551678554 120582415 101699196 29454779 594965322 429995291 428359946 451878476 818510474 646953941 725008657 134707691 734559946 688179984 148551685 304297864 338411090 514395896 931185418 542720761 921896443 180852000 461853016 184985535 48047753 599108206 846766231 817934175 343095594 12462141 503909871 273864594 337546397 966331994 460692651 879499607 299391183 398861974 66795246 94935274 698683527 256754914 479057293 621907241 229159825 86382538 952531503 785765390 549708935 113426957 333314948 582496987 389631278 431790794 186921149 665449175 228515475 864233102 425036637 444925993 994287350 535089924 502306164 912750049 861782957 763734593 932793049 868002053 209938079 981887759 221592222 915240236 110449437 214226347 822982864 150442588 312865084 290280328 844242493 129359153 961921517 145878325 5266004 328478601 960007569 459837199 738425326 445202951 568706179 398002374 619411180 386773978 272562949 721295455 419185551 910634942 234666139 745397991 5439579 762157804 522518561 938637395 194619268 256773020 703339544 796503645 818519470 956707940 629484318 535453287 220873926 769385030 529183874 252961509 277770314 149362972 9421127 269060225 72434185 383032971 378570111 774672008 18772201 394317030 787812758 557985346 607486936 892063389 887436166 107194556 741143379 123023679 855366592 111547165 987784687 675343547 964436997 927646323 368413403 540213128 643238501 603917921 838853024 606338067 761928410 569797600 603349147 731540392 60190341 911646178 834211168 122675267 25865254 893793896 63871066 33950149 339109412 913767402 2157941 813821760 328555122 777544567 468997607 996948076 782774336 362167104 208336469 15505651 115931399 17266327 80261708 312028543 404050153 680895473 713081590 969625666 727393067 653384767 896366211 355597235 851571649 905404117 966961114 546139290 378955715 246439102 817342625 723235801 946094590 448935250 602382468 178222503 149675702 308454163 231281340 766958479 534794074 419884133 162583786 808534911 693198560 794914388 298130224 460514056 234989082 995981825 913960965 288648452 911072553 301583470 328078811 790308214 542167764 75696289 914574724 830923897 15193282 421050179 508925981 689544666 351141209 717822361 554795670 89891733 554344301 611538400 483376024 382068585 404509450 469590152 367775666 412484655 661556635 70985105 57862749 167317763 46658860 533381015 206091340 576507095 611005382 395936401 291284046 564900896 249836137 462343218 393475894 677457141 766924615 448034060 660364572 124123893 541696725 847009779 52718831 690245598 304670877 311231571 851901380 689870719 481744556 68529739 661957716 298249715 974062082 538132892 772135835 479289841 932791438 50598171 676954979 343640447 6918608 926663898 273118201 937122311 892639882 426667425 795821257 627980941 942562876 276234827 768715729 168704667 38530970 290418146 145368247 890977838 694691023 262900553 454230476 846113069 849121898 176516791 880200457 631532064 199693625 294560783 920901510 820384299 68256386 428418111 973946712 939501323 459664790 489542368 543690480 821485019 281303508 38092698 220234936 732785508 467979983 105674770 324577358 668932973 109699877 774637819 869340111 192317579 698669410 881409667 730675153 823356235 615020576 720005205 827176747 90288746 669923974 663886197 572224404 528415370 569240619 967376734 400990626 179749371 393183897 64505166 991507005 261880674 785068994 334427600 846521631 997790206 570725772 76750588 714245163 451928318 798990235 496340994 831940326 839365466 718455082 848057237 579578278 719078662 252869420 914783305 361482979 721863091 428018832 631010247 43649722 560407440 565711166 130603403 599598779 399841262 936823146 862379859 49714444 77790517 561237335 87059597 122732014 860673599 903840137 281484179 395373568 29901215 659006081 607967241 264049076 435672577 928839351 561155875 232398758 668354184 197767992 58189019 528595876 375466246 621849111 776646274 745096528 30887202 695658438 302731366 492256372 938773007 451854945 515785318 378247574 272168768 559488963 53320867 889940509 610723717 635322535 188975415 322209261 290668468 846820901 133952227 535139835 370777008 208063699 648367873 891485509 583818629 675067024 316159988 494874604 399428957 923627381 904014437 297972713 989093256 793486281 143766358 211081790 516641549 308807695 262064256 582773114 295281208 417486593 579164948 843872486 351254469 966346824 694714613 979540210 744973150 988856877 278193350 969608620 822785947 949817190 840256425 432546242 158104234 533479071 150468185 325503874 6654021 672237141 681652413 88238493 522576948 296096072 260047218 337898908 96815259 504577426 802996523 665086201 974929946 167657878 828426548 658650556 383103006 63144102 126554672 409324115 897075633 237180905 6153391 709805554 194861177 486096861 297148786 92348115 970829539 887363479 808742093 924365625 101898960 625001786 553475804 802466309 344818595 746363233 495925239 180961345 477685670 812832563 634159603 122658333 827565232 327600368 228380911 116803399 366858964 464908165 872833059 297960978 641077620 666708851 81309720 509718408 101670554 242485929 985565074 319968720 785990364 584830097 882577831 448693034 516416361 672553971 710820281 376849424 392313245 289884798 720358100 29254915 95506299 900035550 40660851 112147185 880335402 28959154 824182842 28885675 565279495 90584285 446547228 216772323 557051262 449880799 771781142 736899423 786103256 280808493 192327934 500913379 181486854 151855338 472417109 786755664 603605697 875990180 73217177 648917698 115921688 665185173 818192240 339478287 16544611 795635407 555448320 783408346 406444721 125600197 951385420 987873166 59265457 319868624 913943768 936819930 857096492 407247769 239462830 426484842 443775655 208071558 482721751 312170602 101141510 172644237 24723947 140297523 404225941 903664164 68645904 896436913 839346918 123713827 440723458 492201181 568613164 522924925 422893928 319368234 67560302 281474435 152227877 989802448 215519775 721981292 990466941 292020994 86449502 392475734 438369654 44521967 45174249 447212619 613214707 125993954 382182241 563210288 502158414 895251043 745816485 137915268 484770926 313232098 367566486 725795061 307352956 112303402 242831081 47037135 603028385 686826085 617292573 699086599 736523256 592588422 288752910 744043685 617044857 190648541 651197600 779329595 705466566 731886952 452050099 263996639 545005081 355392818 907747930 406418283 270680686 136947708 938379094 214191254 326932845 336691482 765986421 90221506 412721347 675963098 969936030 346191072 509476572 222456000 888951906 287289829 217839227 569311686 332945989 44507218 104028431 66991636 585980749 130491753 569338227 684570558 298126654 957550612 782193281 688025928 834187546 588761818 33750410 89184650 454685224 634154125 142444097 242878490 171706183 468297702 913871746 6331384 569214130 395953307 33517839 459921072 402495547 743925813 322454727 782259086 73741204 646802676 992346614 34070762 801643608 800774086 98239417 765145380 662771179 726524615 865435812 690395108 471943581 892139794 381670211 853280698 51377083 377720171 514681489 97850092 820621483 352489783 244689605 471427736 223162669 12421721 41350548 770330038 62038908 581350496 358924517 924830942 378151968 400677853 278613405 512603072 288074074 321540735 367856269 868456469 728232349 899394913 150822588 444816691 681531588 44137967 585763147 892397198 965651740 609385487 266475918 335265109 559472710 592660432 235883236 315436048 576984257 309668174 743620234 149071751 60980056 215340166 206230159 85313501 705769102 140097147 988309263 414206392 503535808 382358634 580608116 187995089 738548307 813528543 220012672 139477911 444654233 360777874 839573518 260368379 591546309 526261473 861564462 403427711 819027417 585607435 289629444 742294059 703727452 325932566 99502059 538908858 961682520 242868338 30927209 126166694 820824007 300079619 914478171 141592660 719297855 145681406 559487026 301758175 269143529 59175828 556138795 531420083 261747824 459880137 755807817 926603602 435124381 618523153 706913672 832412591 144174464 265552208 817447248 542327722 358098064 254506207 609984971 999966207 970117705 419408637 413117513 207661644 901861312 914947385 12799035 192164950 812014531 466876935 120283445 795972830 102352594 894210245 690747624 958100758 173824162 464767246 83635182 942714866 681872003 446989422 661440518 813725252 969398909 879882553 78497833 557115285 523457184 893962682 436182280 731934423 560845505 544688804 76396782 665979065 483020191 746482395 925613797 537913685 930403081 307193632 171390008 767404899 448361766 242299768 19656200 232376564 836967452 964208663 126243338 263961731 728001670 213132807 775655692 504647891 862380659 29252017 151935086 403547830 964627706 440573260 893860640 339106021 605855829 777050285 647434850 970535802 982345272 84785640 941710218 440031246 967687365 317325423 281162099 940340194 147245380 593528431 309648525 391097666 519275142 984322993 226026922 715826998 854757668 850024827 935646028 446549272 916262942 63148310 397983405 213556608 798185582 174298907 163178036 832088061 414082847 515594889 846691993 16406662 645113728 119585371 109418700 294970548 743062668 343236226 467732183 344601563 158053507 225836816 994292581 195341028 603514926 193556809 85534842 338485768 564718252 224591216 298307670 779978051 879936457 133586561 180898586 579027753 130896116 357815916 313162628 546717847 887848783 582663683 143113 905722855 120178272 202945436 954062353 688694217 590941334 524874821 596107660 674764216 708733443 868453176 697673142 903828552 961806524 373150515 401232426 785835247 381042587 77021349 161243287 408865416 616654566 536717734 255970151 445556107 357788795 158458307 201315145 833560941 938459373 27612472 568356381 926627061 612600514 890180735 935942153 287018334 773615135 930714391 86760307 870784483 437924708 282911521 834017218 235983300 477061238 861849089 122789153 872389913 820937383 543309324 186729561 164030571 588142142 951409199 321489598 783601950 75404767 626832134 6886375 26592237 65296290 751308978 257171127 49985416 44155957 530622127 264758971 22365169 510744042 82787079 42292852 167288100 881340679 524431203 683680108 441814956 608805280 682330784 836302283 783343500 561215500 320487566 306748538 921604861 671002929 250673197 718138690 420147576 690959104 996138683 919715340 164924006 817127152 164326737 129755166 104493224 321130761 635623691 813463973 474003815 154906914 641288631 822593458 186546772 300820508 88024441 452435485 991720807 902674353 940346027 814472701 9161018 190057215 869573939 336756525 225368143 67710478 683500180 763846391 624391243 481378038 626590917 216257353 270864491 257030088 726814124 255211165 550898511 463374409 920150591 526829359 608717166 234826850 616787241 649926743 814902373 973550750 635718120 955749632 899063901 514958645 957310052 729588747 798958933 864033201 203691403 431650594 107401757 994091658 502842159 584395058 232322930 255875399 121136717 382427075 801855953 34212802 915375410 721820098 766472049 721679387 720053315 377742774 234928379 765787203 674722180 283433459 730796416 434956916 289262051 888568726 915816642 786861984 546201831 463961124 842491358 179237502 792505806 471647747 35920128 723950991 579553891 29301129 226849569 632277030 232178280 667906384 574000084 211859232 934470467 728142321 463385139 179230991 798117441 161434989 573220140 212998046 903401264 376942936 666509220 240119028 48351040 971453841 344039704 169904920 550132373 334881205 296670430 508232071 221916047 124618744 808604205 144480393 144746072 224306235 774867446 776944079 20351791 579795616 203990403 865377399 575174144 300653730 270791655 775400683 195029699 836443884 337537982 126365152 516615754 678584361 28364040 520661306 290222968 943292439 741295662 995517468 353445514 863663823 347116003 525117512 386039945 875056039 706237366 680749555 885031579 604517263 546707405 424157986 332210680 324647600 629685658 156373989 732087961 318762616 828569865 117548863 316750001 977429984 60435741 988923451 303913148 355871559 949769284 138905410 461098041 805022471 557896144 483345366 78649084 211139349 714796440 351760812 536972333 461285655 826212026 865200951 212389362 527176573 919053066 212768597 796408659 841231573 679345752 464770526 886115265 644329996 565287847 746409222 86331170 852925147 801937200 325938558 549520202 328459487 871504451 935682323 777847524 152320081 464086650 477324772 883475959 199932149 494636182 692044738 281389718 203479526 497150783 56325459 130627564 573582709 770547495 27669544 874746213 396727492 991117348 871176441 638998545 806542214 290811628 380932026 693455825 640017319 563089664 487342748 49808061 724907910 611266022 139713447 533411550 173991038 479705873 65469172 461145044 673302078 446577182 513065870 902878386 183458386 210541671 560479009 392389262 747731730 122426490 650300143 837176831 275120737 406287879 322582593 905432919 839178421 558094842 658275355 766229006 997772819 201602693 667848126 976865009 170425251 34528638 843581203 233184364 408879938 765188913 130941270 262751634 108689105 943233325 222668690 694326787 267695454 522103873 216139142 169529701 981928943 770715219 886581988 717927548 353430917 40073310 551052305 39781476 495739460 346325279 391260025 14096064 892616869 608918551 323601903 393495155 754276262 202987971 548805798 573652842 70272019 966603704 976387911 410705571 872693754 319616306 999137912 678262378 750333072 899793306 20741202 111198307 700201846 482278355 620441623 825885013 535822728 592260330 609946865 307375116 102732180 612213288 618455152 661356779 634400275 189972095 494132866 613512646 93992004 474453019 614255796 41451542 15097429 133367814 999236678 258989146 326027948 198876635 959316690 738301931 648431888 387290137 555942738 41801238 791365211 84513463 468881945 171500266 267501313 961066583 884007847 580125558 81334037 288092268 213740741 805610333 347601523 965883558 643434979 744878476 576811696 81681031 128803179 92803404 624368374 755770829 376277493 77784805 446326581 514924957 980926151 901965831 281604936 186927375 940605467 706514492 671729877 953582003 962918465 793797014 696702142 383452990 84836325 219349463 834045773 142477395 446623107 548963982 807458636 440346473 922936674 925317260 520028227 11184326 206410068 208629687 951405415 278326634 502792705 639156617 797677126 489245977 672669099 380620469 945112110 797656612 752033903 399698584 684242656 310702842 580025124 111799411 660696019 162883160 555674114 929244452 759466595 230115592 646221174 983132619 96428037 389423971 332481798 802473587 992631136 644752451 897325201 914822841 441668457 363607895 896901503 269897796 337402328 472487248 271656348 43614212 373578896 989141794 518428039 987379819 59832017 166856886 527966908 114632252 514425946 342939171 50317405 648545244 588752030 119510908 463107130 91323991 692205276 198172945 968658590 138155999 597684934 862569482 476270018 458694498 271260987 581238915 147989332 302211984 686663462 916803996 950008895 931009580 123523127 417955460 957627246 499503582 690541188 443038525 898534534 518736745 290190969 189357201 816987602 494471871 46089635 916990231 462526682 883419092 237745383 316961472 623975104 36433327 983310016 612501184 472583133 766653862 439031186 190498570 715589049 974337418 290207120 360617421 797753264 518031701 210862182 529254692 739922750 181188680 854707843 394613542 995358005 542066851 640245752 240238557 693442483 47442568 543480345 680301171 654339177 466833075 590724946 65038039 403324975 782235240 640324869 437474467 217762925 879064996 796766223 250364631 22003308 19729639 836221369 52561488 335992167 770017883 584765079 756532299 67070629 942255540 909849419 934647909 808769147 141862238 554837581 387098316 569712367 663078314 223248967 848866572 100094658 920292023 833010739 485082744 154459916 935936248 470805710 794242426 513883081 242503130 285460482 48984335 323984810 388967956 262940722 902286622 937192930 57717865 425449030 414085626 73258528 701240940 820901435 174129635 417403895 353047884 769527807 729634019 960103290 57908010 412143209 951200532 120541546 652988363 601857878 712989193 448463916 358103565 251744198 56921731 124293235 686257791 760395146 556926264 524989129 748989576 218365036 546337683 714011992 972523506 403418787 306797697 649038492 972656484 937146785 765425722 1709363 773433849 91008198 351673900 876131406 778136487 64299657 498828412 243963817 296224993 752498230 402306949 181403659 12344347 718604348 584626216 420527995 10608047 231854577 231554010 112782826 4159020 241142608 411722384 737471162 234822492 763610209 6436928 542214869 449882341 852166360 870719821 462917745 590383656 126718854 326310687 602500517 573797710 128601695 880087426 208404302 320579990 457506624 933232262 747293121 716720593 685850159 428380883 262334436 638340024 981934628 471972848 365348276 648431615 225603061 975578741 281285613 832304358 816110492 215723925 105565203 34974118 616290013 531463564 627166038 622396808 470050058 31060387 368972459 310319358 474889085 736137458 480884395 214479176 300831085 507933277 285874861 23229740 246370497 615163046 590340150 495228918 579312199 203835419 31647129 305928124 536764863 665369685 658030824 712164749 61231161 696785626 313634842 964715302 749006212 959639863 582168023 254150283 540271603 225224130 737240897 493508315 170308964 377597577 160425831 43114830 547380964 188634237 84734248 801587261 962084297 692730496 352252169 929720514 154832153 472083738 703690914 907739848 756321146 689178362 600895386 785667317 446846356 853512130 643255103 891369541 233754708 56132652 299067610 528055704 88912459 871768550 184362427 757020578 408993799 233268339 671088132 40810605 430361178 107637364 659215032 283554692 76263460 950270166 458060368 688202035 567436902 834390758 705262855 971394425 133345225 994876078 349503667 620632404 656096413 974958582 634569420 191370285 247295064 725546250 118250964 343432921 910584299 646050501 63484513 648535038 334812619 411851392 836935328 93637063 10521976 829685706 944501611 914365721 232876720 451008469 262286046 411411534 738317344 899486056 186869067 34025544 627445820 154427596 128700924 997512670 487421522 873060316 938833553 841584374 947057941 774721925 607550885 66766410 347887216 451878883 694716638 298513879 90797083 205283541 173983050 112934902 527800177 851078014 643704036 595051847 435139264 668317094 388916143 420887051 643474528 495388542 918208559 253233302 26998156 106082318 475182113 515879065 199125309 846320034 413433661 560828808 680592924 333942934 342358607 276969200 367857614 780224151 567562229 112214252 993788184 818857709 226294384 733765551 194177160 17630069 605446275 598554428 518145087 431383849 467679363 113491445 328015787 85102509 926240971 158734194 775678877 244936049 824287086 878351052 432655276 354569803 685934573 220350458 550818401 354337238 902415841 27260839 644605918 764760493 862257960 839195910 721715899 936468385 908059509 114369034 244511175 608091474 119209257 461973339 3562420 954699596 853204212 178058938 941682105 29853480 382693503 916656155 188427406 740060508 226366338 397610607 17064588 657592156 947702267 274672615 342097901 639152435 962953099 637564875 836605055 289267117 148282444 955613875 104821771 587740605 430530736 122949095 971936488 314950559 276048237 922470123 449396643 877634918 186377935 979142014 880085932 988510205 161787591 836474269 667779824 252007739 121949449 48620519 823206188 872020730 858618664 741637342 173447214 710309593 581789727 108955437 200141137 573267574 300206299 919153877 380962752 180069475 739296540 682502776 449118731 293179290 817998099 769793890 544347054 672873746 161800937 604791642 461020954 489220093 3798911 872240719 561698151 322989777 151315089 217927751 426407110 763150459 268916381 537181999 231469683 184451651 757799750 875544028 669425 56476792 960996380 927716159 177587803 980516204 48863839 542554955 929832329 458777756 993915716 24012982 502654050 461631027 371607864 50028284 873879085 146683052 253896732 538838864 165699845 572809120 850152224 226508085 4308467 116385869 138297710 217370819 429084921 894913841 454205765 56765732 728759362 162265495 659275404 659667679 763398370 499725091 598297163 298589468 306422926 664112741 901185415 975040079 168208993 516456650 17434247 650547831 511905119 470112176 590747008 613421960 660155625 766217762 145557155 222004849 117525815 307545962 131884230 45727439 358397658 376302894 282857829 835784859 803166128 443140202 754423200 248449364 295531238 422324158 727665074 167199507 875127585 770586251 618347714 286284787 950626175 302348147 39917257 746501160 460487419 484756257 273823283 354127285 672511540 617670245 945402962 321243163 977075955 844758951 559795334 536074636 437282387 839895776 850113876 463806809 210970135 696588739 985883066 769938688 80903319 756102291 186834452 517871475 888841247 751302381 799824250 458979349 981698977 576025533 472748217 827152278 631635904 992628756 558628561 313753139 743163201 631519910 224969063 821915924 255027524 377598178 417147437 524534868 962003656 772085759 826267274 995641553 632512869 599857309 299624349 212137856 571633155 871689089 174360230 527845179 331540869 233267953 692779355 339626389 903087867 121122070 566917668 984325900 178017344 299815080 375757737 475604366 56444006 528979313 63517842 822328276 794598241 748385311 324252802 553542909 83056220 952222067 532172360 112195001 319746959 895791038 532778487 361227359 62924000 562823670 351096897 533388317 903719780 788084768 51787954 153600356 206842005 30310922 999513590 507498721 378652726 834478019 72808800 176896971 852298961 205554441 17690524 196513661 223082116 758492039 836431050 762677111 146059695 697118655 378623479 843598193 782686420 424002228 423700368 7339043 851405143 841855172 94544538 115807351 817776671 892772859 410322005 796891179 580871441 855873997 482408477 227253523 612561276 540268802 912663290 172919267 766446806 50083307 402211422 56858749 896884049 378485983 459942441 181100400 352196852 50646061 573842344 179356902 302981382 530046308 673900575 712158629 923941529 111231348 869076470 190859949 3025343 149484454 53609873 110758261 439148187 543887076 392247174 38258519 488024317 257398832 498378967 249129788 622043857 74820753 575630680 969098797 369600180 198848395 68102131 967423903 114941300 771571045 695758084 695156446 559734147 861510938 12763132 834572218 306622031 401092142 573990506 452966974 659799456 914676728 187230663 382793995 369414317 246244865 601824493 404038506 796342616 938725281 560328191 869166781 101284631 944342592 607431717 824963234 12010662 420986337 502631090 214093181 926421926 628481104 388263967 341537776 648249985 763308921 106719488 121162224 333062221 649942108 207899020 456518842 690967982 737056160 722362024 691104858 425812662 67132355 240041642 803898077 885320802 232105019 193196224 824419251 808919460 290475277 597581313 682298415 960921430 439544099 306812002 70593121 938718152 247227011 643777528 485926704 477184991 85853070 305803490 583866819 89590887 858369658 898110010 507914392 636152906 148050236 522743995 166335973 318588165 494325509 314507789 784494718 205203881 890630339 590677754 632244206 103692572 632488682 383864467 100513987 513358314 981409013 90819023 441976497 26291854 132102980 400676398 335414220 220589845 427487794 114309073 662242841 174076101 910244565 852980441 132636245 165467332 145413685 48269974 993580335 24569101 659562001 767386923 199046678 203686693 481384769 539534689 64726732 30588408 684533892 584004248 370300671 543009029 631740926 893384626 422040 854062707 695429081 322270404 307370078 468623043 141700931 626239081 672610725 393218305 294798673 929832165 289145956 769991770 360807818 389833186 184556329 695258560 615919533 781874960 717150612 293092441 570900711 946613676 138087395 523388498 148667232 80005030 356583260 831333361 28696766 84446234 696365293 163646762 674343064 770609912 597286660 51102745 594743883 468744139 588262796 390245335 54883074 487211921 664136661 740866031 848585962 474677835 202026307 248629602 825570019 599119116 976646931 367529479 813245587 42834384 593780456 378087174 18976621 650320973 625658718 875551768 596033291 728393345 738393669 524308508 716092313 138591123 897815056 162453247 171224042 786032306 156146283 616099586 913040639 669204933 422123833 276131945 241227013 437036914 439126396 851280890 663203347 676050808 89915855 21181391 355575565 650435788 146315671 70653057 100962407 290215817 620942453 950292236 843009535 802693332 470871796 933635628 191161901 91240525 580804930 7974629 119985706 713629080 56894319 643411234 263419508 756455240 970544961 166223800 546634066 862874437 236543338 141690213 340058406 64172285 275623412 54086763 953812347 51012931 866279816 718805559 240116615 571766699 660242013 438584843 362054980 472248228 555229358 698433601 824424616 521515430 772440203 534783032 66331050 230550230 863244116 53521034 603161628 171287840 271109437 734522060 245993679 232904473 981660800 706076713 878631175 825124242 620572030 852492981 489436264 226136514 505168969 663633538 773260575 925365662 639688440 758614201 361981120 852386923 982290554 726274272 660802682 939110391 646988085 72612479 703441919 361276705 402062729 638835899 310136776 883432912 353556502 809652367 709587483 381527340 226820269 675756881 385844152 174503340 91567384 741326719 928123100 166030583 734391657 110897183 908407763 979957317 186243435 671386988 371976921 504933322 19660661 769234736 353988281 107395206 736709263 116779789 549875426 633907720 105631517 720168529 508704780 963881652 857945243 774556534 509846600 27484056 879499663 119994278 867575213 363957221 272774396 538484327 851195258 699528334 916606217 78284344 839066598 699792695 210819767 316484158 664525080 885772071 93848320 632197894 870902340 995025823 495701491 62014174 147363402 546198011 448743846 637172682 39744595 351342263 688126205 986578446 382965738 973916677 646691404 126262391 210905452 757068527 146486955 461281552 234457238 20412936 961629952 717369513 708789855 454221255 951136068 951828664 615783918 5951576 353107245 559629482 52969124 966396392 922719133 134275745 273588299 283011990 742806502 764154462 218823459 269977385 75317819 53172147 437413765 575439970 980233633 99346767 659711359 910838825 631537737 787063701 107110017 704486159 616950526 323358551 771731954 500252392 155810983 701232143 876256447 148516402 644429445 492563233 48296736 92573387 616457560 728101306 518345068 964362515 393421340 569031471 707352212 996220076 618414775 223558090 716597487 316880806 352438275 10132644 391723265 493821372 89186787 477370692 801183808 849953840 34248769 680577645 520392961 424774064 762983211 697540704 799673365 750380457 586193121 201730375 543977402 516394461 55843071 23285228 217104563 395414010 48918127 889329784 294353242 461684797 122016723 836900284 628644888 389535415 94039041 208223154 664670409 431767078 341993956 357060148 816400869 525319659 511648897 316754232 825386943 500810587 1335584 986668308 301979715 694781414 982380234 152505231 678266815 695905850 480852370 91620348 685562135 153988675 905490110 357856485 543970692 671164119 88284940 795478441 588270157 350664673 856918749 758286707 637244521 673409381 927581443 110935336 352934212 96493345 201906402 990864255 681541123 887131910 898944472 386828040 18676988 502886799 900899804 875463157 517552403 832977012 601488610 215682860 830374995 15841284 384488749 139313811 386671160 255579799 71574104 389925334 57852624 198861111 446655858 809709383 747558807 406522222 241660797 522911305 787918348 880954254 899732286 602302462 993525409 677834491 454314489 75910221 296237406 470470382 989623545 625461552 483289325 513142887 454411814 485675383 942652615 875121607 560058697 758249420 624262302 445655345 255643789 916921270 343660130 14540675 632040591 5221380 306252493 25973361 135551655 868682389 711328496 723129693 44622566 745658650 669751251 296776674 875565942 931870275 546809089 922447504 585330112 401762488 34433421 306981581 29999942 950179690 547689352 837155919 900364023 32418564 619066817 344269351 210197031 340482348 27425572 982337079 417433614 146912383 56148190 707167643 927033530 652204104 308144004 338319642 118140029 379294842 86612109 230271729 322872888 605286161 733170014 392665004 965297570 742622478 935665806 127894866 422921985 401438600 561399870 861766078 122133950 211792423 854415524 205749264 972519862 263811788 938306385 909182453 981069439 552818781 963370071 252808746 382573135 535588063 962626053 86615346 681991508 658995610 628732772 296909607 23525039 191969870 247589991 249851496 663062468 790169905 667746387 139670870 625516486 4651048 754194521 390756718 343891336 795737148 82981488 622614984 245654203 213528479 621172792 223630599 888068362 756580568 62664875 248418031 191839617 837812183 68148344 619272306 366491839 922923604 328584586 162779678 200093455 856359426 980720296 210013998 695543575 776192355 222343956 602775299 813192528 945757818 1810696 62627427 996805630 721340069 822860000 740549986 172592773 782726299 305096788 521004596 314876738 38439466 520564542 668260219 11804311 726126094 891754411 996011646 616260187 339452396 495970883 271081773 531124204 826352169 486949869 338664175 880919927 60967231 70370858 429062150 581821322 698747439 474469460 916932348 190376616 201612863 562803034 88045134 520947797 665977338 956914303 942637444 752521847 77912289 611308199 390415842 776136345 266718931 429781486 574397582 437762901 549922898 587559449 618147330 346580343 273200173 322548931 138321979 520114059 980680756 736246439 66616052 711496497 986545226 543912706 219908901 276463992 113949782 310660839 180285987 11096214 972397056 184071050 93312215 765581795 720269551 698812487 921640891 123511287 109556983 825033054 473090455 265813672 123056267 441141863 418240195 127723861 703158691 844657050 866297949 489275723 205290012 995489608 850109187 498137301 156877195 639557112 995968845 614350700 146558588 790028265 617172183 508660851 66805059 106505374 984997249 83268403 51953042 334975303 712657249 25330732 52462002 723901962 66433547 930181417 870268188 701620662 76371090 942544290 767151249 390278984 989136075 357807105 556723641 943161242 369155038 300526319 631357117 912726385 417775146 729483325 431203587 978486824 308676089 347232824 543185562 249828768 280906060 630926608 974187947 36126027 570028189 832815812 744079410 3535280 652835609 548906005 267037092 426061819 779494572 614023817 92680832 253830224 57697829 82961141 836166457 91524459 866246410 505351803 424304472 588432840 486367555 420511887 763878058 125172197 528648629 274231258 256482880 126976341 436095863 644074529 811731571 344166791 46715986 221494100 303761620 894858587 376441696 682205045 594651246 939011827 848871501 683343009 12215641 906080136 718411125 29528240 49985763 459151642 408733328 645829106 554412321 112723394 654588109 190418087 62355935 412570697 589113047 20547844 679918674 207972705 560872820 384153847 102642174 774878592 447807467 60393779 48458122 205180514 966107093 406039045 951682517 152771808 406417666 196311651 144005102 89927617 389033509 573666659 535696264 278660634 119617934 250698720 939245136 863711371 800719714 581519848 133389217 294544825 543818092 437098438 925580595 18880421 914115319 50874907 453135082 408882436 249777968 846417039 438630825 957570580 331542185 600348588 990610810 610347408 141240912 379199495 862763127 865908184 457820203 728956661 654346451 357102264 284239266 481046070 765039442 263660064 493174548 220161492 143351706 449628396 69395187 61734600 575881774 605671253 684632620 276672346 922951758 254070114 98463986 866800424 333682778 277137839 966727032 95641550 547958332 599549808 1137973 70688735 971023584 562468599 587835894 228879889 893185942 612196624 782634492 865609426 6332124 982824116 435638157 673776022 274101318 489547301 415649450 915127451 844148389 651649832 886274997 556940731 187317071 783819893 427865995 315671991 834931955 703682428 266285314 660857310 949066801 987080107 886697054 283907250 439466812 556128794 99960329 402196006 370675031 906165496 136507418 824051883 858039019 915038931 48312691 24683626 378495531 391176691 460192189 49223563 112385725 233516233 548108261 561519340 500437358 687673006 21762872 671452437 905761809 562866920 104491037 569955588 795453166 705700629 176716280 130076156 722580619 73012747 395264167 270545677 600471332 469206158 794137440 353589243 839840538 166294157 508171557 295383218 874267544 150691746 54964222 143237054 578504384 867271661 417530095 452379015 553412194 999432999 651767780 313264819 641036228 38501105 370446162 289546230 130994314 642850740 969354121 353007177 142633895 355408994 844584676 192635814 36582990 673026544 826574727 564126809 481058365 651668234 706420636 845219274 554090250 903712825 31427131 914204320 171684439 233913708 650315657 475691150 725206072 921907965 897013664 87186074 350650533 332355066 703571239 457628061 182108861 220210026 42466033 596733875 980481503 43838942 583713956 645273264 720820993 501018431 356741029 323980430 274629474 307291649 616075579 134249455 759334551 339418987 558247358 49751758 137615368 53239539 228300470 150450953 146514417 121051460 477248173 183653145 148961830 253696758 488624658 935557567 372579100 511621674 827384915 310988016 794244155 942220667 971866802 53314523 555458104 511564471 731650526 885473302 878751616 857052720 749467759 915359092 585058996 156393214 729834178 369493874 165205887 753457948 47402892 668047425 717761293 618269666 428762375 439063061 630096922 439165068 648384646 312219196 470990795 163737885 904103013 337465467 605985595 874757789 662039601 209242243 845559344 183167303 570285333 861356590 646424345 625528546 196945352 272433083 745974531 268352913 33069577 735148593 153114309 110193116 352163393 144783196 559397031 25070467 681097783 60981816 172272093 356460578 364778942 607427601 4907996 670741008 628671374 889439229 151510204 293512046 297329538 992320943 343176010 133354951 9703200 707384434 397430188 961775295 951855532 537969955 738457660 538702708 648515539 693894643 172149603 23023462 63161950 878230804 741840443 508859367 764007811 636799616 88053897 217128703 620934502 540317707 600468684 741993499 186077237 60374713 579817188 501098254 156553314 924630664 225721937 844436735 279625375 211843588 941224365 245765789 167402360 437906238 619765497 461453144 812340047 587750439 455834765 769268716 70681423 545244889 966526888 781190201 522726652 114758787 557309508 852408896 338609867 95654643 909825242 206922526 687214126 162034972 531370410 25254477 956842503 126942499 593965192 88248501 994757757 663289501 642827155 243810435 92379710 558641198 407154175 320510409 510316174 617725028 554910606 259784657 425865350 831596284 265573846 348509816 286597612 724693574 376283104 750321694 239053786 407161033 586122364 718521858 552019839 779231201 105785102 614512477 256245689 248668714 187671939 997854453 152592575 445887768 138517546 551954135 317666946 732358908 823944909 144513668 478712086 360933445 245071763 54332127 246031880 787186781 770031493 566968549 379213990 243617925 244327210 972088457 793239732 824270294 814471148 971350885 134128254 682632584 160124583 396826013 691251555 128167325 506096672 524285984 29129103 306737090 249700188 997410733 293167498 109909779 249178772 74379395 384140421 491693205 799517470 299788625 722027208 549545121 35899887 273624689 233293345 147940264 586234706 533415161 482639683 338194866 930215495 89521502 341417189 820270021 860915346 129663885 63618020 804738738 659085494 438917514 842044966 280290942 430701865 302368797 788424559 949785758 878415555 903062061 342868648 282854826 548944878 481333520 11743846 782518899 892520804 188281070 552113917 443963393 923683061 597674103 615653904 131553563 384555826 999254095 780386942 80541219 873803111 332188150 21807944 650249276 554918781 234728528 964425463 987808092 311424405 700867046 641974631 754566668 205386152 314768871 952093926 402506343 248259811 430235147 326687908 436728410 638478436 175880780 331185602 525921470 85389996 214340312 47744496 446304340 11490642 757698160 84595701 188638798 827495450 635837199 716582467 68066590 269741072 49675855 148255393 464324892 761050221 390166001 66032144 885651804 751911691 396236824 702858115 997359549 616273269 468434952 621758194 918057655 924802111 915206405 972898678 412516432 631905289 563619385 383235742 291112084 560129121 850776034 918091520 118166619 105717615 719842246 148036589 499182466 834640916 512741120 168542810 533623618 621562996 547951860 395552435 160846171 34110945 611962771 98588257 241856447 612696134 384030251 906152733 432100723 895714329 91491709 150375010 440882244 598970903 243373400 865072137 66334635 106872304 929210540 186220717 61583643 310576801 62391954 684467223 379144670 521832591 992888262 781213390 535168513 203012235 549362521 240248910 509291739 267436930 159629204 279835313 733605656 843875105 452030667 788971348 524577517 261386721 647624942 395476500 422665352 30816268 306447890 266895882 402707084 969877670 767635253 908230247 643208642 394605837 256354799 533229575 787712278 457053689 43627514 26321368 242397431 790347914 563340106 559899166 925154824 306260909 333424804 393059401 777246365 977881793 881536984 885018609 77190803 427903720 780224698 517217630 7361739 526027837 660556024 591245292 950732109 708050254 911785505 62461350 45300228 277587316 363426742 420010548 472316270 997800179 986985456 502377900 507488488 933484865 135460877 981813852 381996773 462032728 550807837 423373906 632368633 28488149 374827778 153465709 374570352 559066760 431365186 180557114 457621288 81493101 957276249 919781111 233473006 653227910 368560241 150702992 575392020 987610164 943683932 724931522 196775094 549787572 77634578 561187723 8256715 477622841 72561541 536159574 835232680 738863327 705989080 871084487 844988369 938676582 152552606 231795334 160362528 903835795 742921010 171163725 256701826 12846408 52930459 391007064 253559407 14047879 431611005 298049138 32505390 765691336 107980853 830220225 167745912 446924017 473623252 933606067 430638202 201638639 559412246 417257466 550503269 960945482 516409851 234535787 833822127 130249960 981307539 582650572 828488925 635619967 859545376 62768708 489448726 212227641 465025298 32726562 909869347 375314134 867617421 379215185 627342386 960386768 529707134 198764534 834044686 274931603 149249677 487407804 705591833 334963581 775004230 413127332 225766812 526908782 938828636 385153826 458837420 707907791 242581551 76421517 773612151 54261951 635386703 805484722 906918859 996534923 811751299 718540366 265320041 380205041 727370426 881683691 695104542 698658352 78319235 949087796 247971123 224125580 248540854 217217527 629496802 347505898 195448076 245944489 60040891 77724747 136675486 122410108 128560153 952307560 268630019 927441143 317005161 377824792 731374594 460253337 477863265 760504342 903097537 883545553 722222520 307227292 967711957 83967767 108108842 56073587 265246317 727909313 852895395 246862134 649096888 942173209 745355905 559036381 975289880 346991360 128927126 744482064 963608 933715404 82154399 592352683 205301968 733802795 387483317 287115292 65579137 815265167 177891270 363800695 364243320 133173261 682340067 329061147 845907273 783620876 667208171 55783182 756626989 989073294 799177118 942738937 879294070 462724268 605490638 585871554 784363988 930226711 192483355 756927017 441071328 956553027 778003504 872612517 625362863 944584610 926969260 982862654 904872149 798269812 518682791 533603655 942651497 415573781 87764427 354304526 515614 235470671 734518041 29897750 44200261 346149006 102100637 736655233 307101980 114653460 772832777 639077630 8680265 1231503 695626331 957782717 28982920 44982008 320951009 242278340 726204601 864672539 134232727 826566599 373431611 569444509 765787834 809793870 728402696 628552792 45216847 995893827 742307251 22746953 792059242 340356700 728345032 310230915 688696441 414317534 53615582 826029134 246076722 181520443 180264639 343961528 351056427 534097400 169497768 175359103 323509790 882825196 84834784 849306356 725794029 675295705 44523258 997883197 776702401 73789553 839920276 33648626 363204564 417646378 568835091 66667931 969216742 430702048 800496230 558206782 845747599 525514389 329396612 799009732 938505094 321029387 159753172 172122598 906176837 698413377 177312975 436726976 774217672 883883774 759493577 2212224 775059515 480793662 981477553 913659871 493252534 153312023 107110667 263739480 190169997 944334689 924037908 654621817 937564647 72759708 343947905 638617735 147045884 498120519 590619911 866903583 476534822 282187463 622378124 678998113 804324849 145512907 997392484 333842774 734461681 910850656 386127636 484587543 200314378 424584480 402155061 418126634 558785697 278213934 904728897 308164326 384032587 554588842 936388030 785173086 708896282 655071245 779114698 262209191 462565070 134094977 73969600 114725627 499115557 287591480 89885475 104968659 112057904 955364605 321639921 279869549 994905381 547683508 837130462 140509476 247408953 278444226 587689744 667493936 477982524 650520974 762124107 419951553 555390358 268959021 238547390 293083714 429568371 328636898 179740806 777463532 641218200 715182631 652992460 140322055 933647410 115920300 451645242 20604469 478385040 616103225 719624491 752572507 11631100 206918626 199786453 663790292 987746508 160235729 424911093 173323300 655815210 436219010 745499651 466395055 324227972 367835063 130420589 528390834 654314422 392389855 250980002 815986773 527215960 82954695 536751299 93863279 50994582 899469998 552988783 809630054 49565529 697764618 985679279 128137613 984151906 965995801 895502328 420092254 876363776 664520962 300871103 558302694 886018660 481866385 902077165 743462752 658280664 52647437 845806610 549332735 699879452 973901101 937630249 554820206 468772026 22504032 114630903 442136855 566238316 823032845 263220221 840388942 344763644 246701626 453097961 662793797 483477767 358471886 407642829 926408709 894854516 905600655 332115451 867495316 913880838 653982888 36235227 30696970 25953820 345400342 716942394 859575950 687944798 236897593 990629429 878002330 150002596 958655139 92048559 36317641 614087414 831496477 455974554 658663393 501250076 551794856 27942154 164028486 13063397 492071095 329735355 405641492 198597503 428039766 457794056 119878816 971210794 512809053 388506875 325482534 786319823 578531302 250766737 326903345 427636763 887197236 619969420 264261904 544725164 585574367 413158961 652666553 284801207 464280459 698842951 632205179 561565735 143200244 903919524 591826013 309434293 909598157 335849360 449318837 669240343 177944553 983197815 386879381 835106900 311804776 55959137 429738150 74077173 342793214 368791276 12038588 255899638 274368825 993982426 680584283 207499075 559077764 124842554 796030085 447756634 217557875 546448370 842290841 241309078 484910232 291034105 825174859 589022236 946502110 454245212 15186607 831727525 589620112 793677778 632631987 218280074 305942595 399464806 568546034 271489503 934237544 281812407 295063960 989916123 924037338 733381946 177154218 848015471 648555489 753323137 401829078 296868725 994922304 473751397 107496576 268036891 419269136 45012392 876850061 628998824 336893288 613630203 799157167 623073008 486367049 371170881 499378690 522313612 270413082 470013960 32874514 782174169 432186845 542504592 999490250 103490791 285376990 59237450 507734317 558912616 979433310 466159761 307860567 306548107 939927465 618164290 735367137 79526959 736477021 824257234 394398726 80634932 893022525 771978487 181742706 718325308 239308476 715351744 730735133 335949827 437842189 394437510 388011996 802537486 821272056 8806261 615032102 82566562 456948459 981316966 104340628 5410648 690504146 57091316 214196479 752956326 343155356 103378503 503150680 151837235 256202479 700063066 730522661 795934865 978656716 60680413 19602280 869695219 362124377 104688639 534440638 898250256 324155381 879815723 704238311 593721991 413659698 553337584 904684418 284945657 227788330 82489359 701482032 830108407 482861467 574970113 683753400 535687556 812881250 275187493 315403306 757493214 923224101 371940322 857578430 280497265 724224378 784251288 456865348 119166794 442819569 532846094 353979220 753955387 536425190 834785519 260550403 97216976 760925792 859217422 6910016 144309319 975515601 817800467 231021406 99717083 14051264 666108943 871857217 837422107 465297059 178389603 148890867 747932857 596382466 254291565 306629601 671722836 832871520 976488804 936197099 200702496 886008084 965391003 667753151 408063104 727407913 562677317 622187787 722256978 443306486 986786465 393565340 668780342 371129141 356659718 681918495 268253041 694666411 967951082 581254068 626860538 709781881 604262258 460596515 736125603 494130765 659753780 307857164 763769697 431591029 417528278 707683361 901389922 468111139 691412571 653437850 250324306 15854207 563004902 458046579 765472186 480822397 837755062 969902239 489547326 604504821 815888277 403599122 580759950 547808159 476404181 967953445 746634228 100837096 80306172 625029333 256815696 855561677 41533240 798830054 386340396 878183793 160996123 674176130 31048183 882038195 828708995 618939323 415380704 301570488 617347892 668630738 525578984 979840947 121103610 29107092 993224451 575286634 165771929 717340999 901672547 747079292 15834405 590784868 394303954 698800042 298380935 981231423 268059782 468776220 380225519 239840926 523291864 828349566 741886510 291145455 797754375 240709069 258770548 132529631 422542158 419575861 121528599 928462069 320639979 908414081 905359380 743544226 944067342 942839083 92937836 387818943 642218048 921775898 505983910 532213144 781821450 848992121 34611150 885816334 356318571 166606527 560296064 175738749 968663114 13895814 206527854 873461163 55080928 678547159 242633451 434755893 843851328 892695117 761629646 139110529 452044735 914511582 314755296 294120978 754958610 16871521 378093928 668162777 515296089 301964046 841701855 963081022 933309997 611623891 595965497 512723926 301676221 310695181 658123643 987890556 409338431 888891059 234952972 772146798 76720029 720532021 8629534 151859886 525054000 456456083 512751811 995166732 929202734 305658560 542446824 50882155 846690923 504677813 309425742 76169634 602407114 14913990 397499558 982474216 854428855 646540111 445926507 285304537 499477169 954075338 260476627 164032230 82424340 780155582 829347864 845668438 187920312 572918435 183209391 68830267 83454954 961661302 905211639 447987046 491881308 328399878 957200052 435189336 647192052 764298655 481931168 110884317 455464046 1767016 554223292 272027388 30946167 965414535 51136723 205477447 2810416 143470997 66220650 603502332 403540623 436058488 546161742 919441110 37051455 419892629 770659107 536518107 611321892 353020923 231657048 8086271 188056511 899579527 490986748 30931240 856777641 44134907 984812745 990431449 234755502 79869921 922756590 847819958 108155174 756631451 608871815 895770770 768651238 430948303 865075858 199373992 690302190 459863109 238473476 12885353 303751486 366939958 204416372 452094070 607652510 864465125 949874885 532130723 159603415 61777181 358646445 928500185 536359226 662558605 947050427 804046276 254729209 953050535 188126141 570647911 156658310 587098793 38450941 736020300 20778807 404074710 910750287 842558376 797821752 9300254 498527640 87449899 394170635 930375367 49523894 724450329 426098282 378307195 588775437 271808234 148093434 418318508 151335300 607649822 606137574 980376173 333753522 662458925 764544438 124274745 606074154 668835028 146456289 900500154 772832740 541797065 98435318 556674753 823997968 273839199 91617908 635952501 94993032 72725955 104130675 842238769 65125733 477644734 516938139 569359335 541091865 482686486 599116087 186031373 330595402 874199941 233722172 882627459 296133889 432362187 118077503 124675953 175835087 39752999 530097699 256212214 362572924 444558424 108774392 670942378 518683675 78007317 571465405 726758368 247733911 152163481 643529962 952584125 329686360 822377994 714021721 272952292 113006222 224490817 980894082 726205824 751292144 686924894 521383318 255436503 594489368 945412695 285382387 458213656 276083483 973940772 855635789 203668906 357970703 759268418 135302459 710609969 199924094 460782357 16830905 102604393 741052903 803288716 213876758 461956071 266372691 899593478 847317015 498407176 631699305 670883747 996725975 52629958 124804503 53251271 589126943 124509773 22973413 11249161 797016751 733229987 993007036 885027259 763932310 565437860 606674664 275520350 251148979 84360823 389442401 978868950 845494312 519224924 100592823 870821531 219831332 81893877 636410908 872880141 22090204 103225153 163871885 765072417 258503132 885141036 7993465 422814447 215305813 483195347 859432131 535751747 318528896 859607718 932003398 943524373 577691080 101697541 651313499 4040064 570538286 894955638 85071348 873061552 204705306 900710253 536349830 67034230 306660247 881622246 638788333 25091254 252781009 565018971 680444409 262274563 584581015 610490830 194901247 25602250 684175160 263213620 458657004 367474755 580443340 381361207 825603338 96322369 188386436 330035141 194838789 617576005 646270313 51376903 361861494 753086936 260077272 928552244 967501686 662224341 63796551 400539051 318385360 859833980 653879738 262342940 641647672 37732544 254848538 345346419 336390693 367915267 356213708 678464616 937597339 931761690 516076624 294000511 211883104 912974729 675081527 641593346 268768310 502219640 860647280 871023545 373606790 244472239 238467068 294198277 215176005 577727341 415834630 414591315 899843877 48527513 168597360 90677153 700311922 876251688 996482213 258375772 292838271 81149083 387850813 998587814 322722041 900770607 5922421 744894862 466798191 908705094 208012624 273240730 939343710 121603870 504154904 982181757 925680628 82900534 782486345 17123676 629872542 343746483 377534836 863885014 519979334 183898086 565779100 804974699 54986584 984907433 990723006 425530185 303232444 510437268 107562707 21891457 618865527 962338440 149848871 479245170 209926073 357841607 538641947 21120914 565033218 574640791 516326441 379464890 239488878 124585352 719586279 285951849 366190108 426418792 711766251 648455878 835574713 278917702 27989591 790801600 251682375 455138666 363277362 701676717 420353660 241457256 521937129 590980002 711645972 397164411 347885952 595376039 868522816 720562060 773130044 603989660 628105749 939539854 817722898 58378630 375502842 644620906 875142001 831195945 849866173 120537783 301617034 758441334 725529764 562816949 573686086 117596526 62630798 407643783 744728062 881667562 635463347 420524640 128641843 992271209 460000636 908838677 430855293 235671909 762665667 349806356 427389207 490860580 285643805 553806872 950117198 97324105 386758324 614664234 621365047 633683393 437177402 734044352 800226765 531386883 738028039 427304611 370747496 863457425 151857141 390532751 821577472 432919973 795451678 218769962 151310266 595877248 23368859 788184766 139496685 410686185 225237983 308490231 616043235 765225894 529855269 918727319 266344043 728448946 637957068 686927406 532032094 552578278 160696611 830232353 656017904 512108981 541059887 538780030 991142766 828115018 430306406 821798115 144864649 725406019 148123331 101512899 648198094 190373793 573443748 374305901 671150126 831185502 854716782 321487786 203599745 181289426 362357824 216758245 156111509 574131322 341827288 685760233 890465849 450442997 896353220 239219028 594493040 420894131 807059840 903291925 397059459 836900672 745328914 772365205 334556754 254870040 550542522 22662576 311165964 72305908 587530688 347765568 164729842 571597373 734752710 907675498 855421902 602605445 180866496 31558524 514725853 256629751 790243877 212184799 129093775 54220608 930368312 14954933 709952263 889702919 887261164 879509268 661192986 76314837 965019008 692715723 611195564 776041750 27133106 34412480 312296309 816651274 573433879 418916573 165963696 433043080 753136638 975194092 555474803 328001394 392272107 841907808 978629993 645426421 244161853 736250480 749420657 430949473 176830013 472207655 868649384 181866661 43499173 736565441 642221008 973197852 60269292 550915745 753933605 207596588 973310430 437787223 769884579 785519941 730595358 557102901 286920639 239632089 930245351 929039437 765093652 485831260 282042727 995565825 205844753 319538120 57275965 382363440 899142743 114545583 388069841 12834796 166390790 503284302 143537524 764096830 849820546 195880858 429806187 383560542 776159108 305631961 347961376 182978532 370604092 388123065 254777433 991820561 72849568 968598817 832322492 896540602 729417833 210839537 89785297 823237918 634224289 316320748 156289710 291856560 376191260 387541084 653065596 439727085 199940914 56816476 423185932 880929209 912767625 808535424 9657311 66559959 96533280 604809470 946618751 660941764 237209530 600036044 355925670 836017404 722179878 845082957 523856811 440526882 597117267 894489907 740831764 234354900 780274135 660438628 875948365 5866030 661393719 450350849 799124253 195074279 127969989 472718787 714699174 868433454 871508254 865236304 168427029 604715771 884313922 828471605 676097581 503303021 211725474 542900898 639900208 431564738 960290674 862300637 17706451 562591428 587449726 124545718 377894743 904787022 601476707 620823423 706465771 430232928 167988868 187432362 976725656 328338333 261509263 670858293 339837593 385176612 950082317 23095191 89830781 808869288 252839326 595639860 184041725 170190534 688111194 620339827 791272876 257621119 755083908 265419524 844538085 803482286 9773033 563695900 726069654 944172685 605377584 225974939 435169026 300039710 586529653 172948495 316932809 659229825 989764430 962963830 534995081 120366225 367270945 993321438 871344494 449135137 530410494 584833221 240529454 109403688 428570088 799022871 899645471 345544915 14311275 924692784 335686989 350138453 781028867 568590955 813267472 765061203 476897882 528083829 239518955 349278692 834389462 465233769 373064404 41518474 995190717 734012713 256416447 803930541 46668681 623813913 290302657 989294710 731735869 13790535 190456420 655441666 353188310 982189248 92657101 760875758 124693688 591985790 57802872 504386798 688421801 573605157 580007725 291876884 605530527 723610823 51230572 14833452 677595911 228935045 398654075 864542830 243206394 584315742 980106993 622748307 568430052 343978989 174681456 283176505 79111067 196090302 12406945 207904079 922682390 568976353 607324241 702209912 968791877 39838065 828077973 523082499 433861492 414939824 836439983 757641975 40345453 267433732 659714632 188360512 843986622 576702196 202179365 877284017 661980319 893664581 148995126 341471662 829327803 471902660 764703572 769728526 882519639 722304049 263289854 533859758 532353807 436723680 734767240 974704429 838556848 264133642 415388967 29478079 233664178 140826616 47958074 485717664 226985887 403377488 294837759 555300386 578729983 449512475 639306704 297821471 520257154 175143523 412505424 295217545 962028475 216004507 330859372 487643924 656894410 525767816 852225350 998701648 372565315 151410932 550053478 409627862 80043498 64448201 983282128 259006286 702572428 528856754 9469983 990672049 477505610 116131961 900681948 626620691 125205537 885253653 669378566 772265448 783702686 107113429 760165677 76161470 40817651 161349087 350967047 785184593 168246797 322768098 659011787 898867524 801788976 654518677 544172022 873251473 709021551 896777522 868384433 352863489 962410040 665621933 906897550 367596489 127277595 944588493 72106879 524758391 266124130 850742867 126401076 89857244 297447486 764219423 754341659 881433418 659939386 389866917 738720603 935799054 821106979 191053987 646284184 239431332 975738464 221499414 644643555 343145360 729999777 222498457 719971826 254606390 851470217 866603518 505462231 402834006 264290593 294327839 95003151 867664602 753587766 628653376 323205333 134563353 44122692 936872998 162454782 116411040 365708521 747217541 529643130 127342686 22578305 85398184 408944350 855457035 473414302 591502229 619409028 824281679 974439047 325220386 594192202 885896516 438050664 847387649 196663408 374613365 849947047 752910709 109574350 476529975 326676162 931207081 622018258 886594686 721974341 173702725 759763837 223747060 15955760 203755084 390814454 316848469 436920818 584021198 147077184 993902762 41298124 607800791 841931262 237769219 208345037 515490211 719696142 914514261 435508080 325769076 769170245 521434862 489852598 261317071 925182710 223310793 336295212 690311775 30721370 55674458 91015218 12790995 604362358 793823435 6521737 897765898 170288777 904941662 722976996 254823421 309629025 457958526 449781998 424021484 414732632 278819907 547186340 372766616 291238508 222104434 789195758 625661416 541972825 959439857 415619891 793319004 276538775 386834963 222792268 33786686 527636751 103839884 909645928 976174336 189874070 515122205 922425598 882251478 273048833 412429885 671656266 664488573 141534352 476406024 891317058 14564016 444061844 933832458 337388048 673207777 685656044 917847033 460057566 249121516 327360660 244373598 790128874 936568042 429546357 798897670 194794028 913991747 227123958 699956712 823798316 541163982 589773849 470573507 872363251 451711200 611609882 586719860 333382873 719628310 521322181 10660624 783342560 9817169 91811992 640090461 601624730 640059116 723239388 938182708 753144238 706630996 565041014 889622727 862591425 826468167 543637166 19557895 969715453 74931672 510176684 155589152 421314446 22139579 964710845 981709993 154598753 689430132 758049344 51341763 976853111 475812904 622238256 648897639 971416736 140556714 912950262 414996940 247729512 978779913 219571404 833774263 991942897 99283072 373016620 219678406 212801343 847371009 99264570 942365979 446249774 107462335 556132181 4478655 109687299 145035560 164779535 295168912 312562142 905488544 89603843 747244622 167963354 568234476 919327787 436495508 344037323 963952907 72143694 113761184 836686386 776978613 966910263 527894669 7996371 291420485 583256685 233451861 352951089 292209159 145214885 802376172 544070180 630958019 76497550 42061440 804098980 360982455 776344957 170133078 67315941 805867627 774376741 103656983 63028219 281460010 303019753 136042562 249257972 216406975 928431668 981027029 924986434 746801071 909812930 815786195 356534064 300594589 736699506 187079270 588093082 627771165 550195006 601998909 387165212 376483109 378373670 882736955 310774601 486845552 777080649 247823299 740961038 84759650 904124384 12814299 234916434 781599988 925212517 535070387 920504084 368008957 225008617 8464015 407529896 187646493 539236041 346696105 61151707 390295817 247428823 239516837 857465689 482938955 544231830 472006704 38717602 241106623 771326229 421935084 171006221 874253494 984563390 301794909 795504840 814637340 264214771 503221776 779328995 541217524 280516962 831859228 231070729 588253596 175567768 217169069 689041350 627708080 183943096 329013992 455264285 299009402 389941855 403209396 758643562 501220798 463274161 885916977 580278243 259103839 369187187 840508886 74985258 81018821 545410252 696950030 260239273 459831922 873381788 394705990 361011053 660852009 512849483 518997586 276100185 332340165 207911900 933302896 887430576 353571788 214189171 20282609 780120371 214775653 218437732 162962268 894594091 380541256 915670669 794490888 530562204 8949261 169078869 661162578 131740782 804456590 596680853 814373913 726475906 619793215 719944407 921840398 768815454 722005105 884985009 989386960 924539217 464074895 886602935 815293659 464674604 56773355 911077670 549121917 647745559 310239751 78135623 237764215 325702038 682433603 933308554 836018993 495528406 960825830 554108955 566282803 489988303 269756761 387668167 558210000 667920361 486901175 267326431 507719309 480308533 527374937 174658247 724683011 730496283 31334005 419640154 122254888 184150526 459627036 862053044 382242582 516719537 885135513 897610720 794421515 143548946 818886640 285868547 464961345 381516747 292256366 291184243 805047777 832083625 716385339 185728799 636963445 331950124 998002654 661980682 570719776 382846479 920810059 693581866 67226458 39314020 910810219 98742557 129867841 991962868 960746081 106753465 519161928 830526721 956122116 289316478 256287740 751323130 276521943 576157726 136993704 361027993 881065794 701896162 354703611 538105693 593449050 768385071 39049256 723392368 62449554 95783858 211860152 689619246 44316689 463232899 24534690 674079677 935929393 172454974 825151808 878916517 363364346 888616918 389774792 525171093 241591974 832220723 876752904 427518420 346413506 148384309 641860918 959360300 145414038 637235263 107928515 521549565 146005788 78767190 917861417 85403745 719861806 783293325 415792424 774880392 19090595 903416679 767337788 911078375 68810147 201079380 749928886 923565264 826430415 644300299 142934882 9715302 730338438 441932518 459357100 3089149 872935118 921073766 676607944 896685087 108960888 516206597 589966320 362447425 789446682 687224193 718011066 449706735 26131170 238181638 555750332 664702687 865168015 837765069 194796366 633937430 734258949 181073387 399234740 717105952 98917261 666269439 115237086 222324535 567872938 83830289 144436534 947093018 162234497 830581467 758074255 346677490 351231800 476868452 142253205 239116432 285820894 753254821 240874829 372331673 80367455 259329329 113009395 622582887 648288608 480833494 775220482 771254147 97056167 879575835 48116455 856560962 745506222 901235106 663947202 211403492 195094803 782004177 591330112 47114835 542165443 797079056 211533390 407531167 391516480 913392270 810687952 558223137 139784890 467439611 404122098 720957737 406139084 189144822 59413775 314042887 269384799 766860871 681504275 926904659 125701549 249328305 304727611 256072726 100421161 366932720 531167223 665781363 847653377 597980631 481590534 417352785 93130803 313669218 254560334 85693551 769683797 547443506 354342899 308453840 964643720 919207832 815101487 135769831 534275867 299517184 68991882 366265588 126798074 812458653 864151513 636484662 485484796 319785723 946323491 869907602 711119290 71699063 513641861 669874617 532748425 372211803 358024380 48968746 857462060 418210318 348390076 818120511 39854923 355343770 705070573 737677286 226442784 363030891 267980292 183853522 457789594 302435482 890646104 218825547 387890570 793265907 468963799 71413579 577283601 130485106 494306655 834232539 233192198 760018866 968149605 726560289 133853993 991249499 27371705 757816431 941817064 576938858 157786637 58104160 367843420 531001728 333914044 395223695 356298720 835900716 632566881 704122258 827724667 712498241 676621095 840979172 557070567 462685595 908623979 754071590 714602174 92295588 43209041 642779171 706993205 308747921 458201735 380415989 205851903 795452488 174219398 231068409 365487967 110185145 891653124 921125163 89697466 25083239 710374020 707271735 817384497 630916583 380418951 244452612 474705915 91431123 478606677 143848637 411246920 230824630 364946251 129758780 581753495 969384896 736503765 338884042 590532627 927990637 243599431 895848014 905853254 162539787 633070449 319604222 67774541 738662613 718082254 675402911 234972815 221629761 327262058 904383945 380896121 859354521 441233143 49680932 678687155 17849131 710200052 481718155 554055311 789172544 814027297 611177394 726622305 34119411 691366336 762520513 58661540 817649300 599684573 689002987 338686280 99303391 411170294 515809206 55422456 774966627 705293761 975613237 998317141 337521779 352052097 943610573 690524880 760498061 694759853 122495968 733689059 34116212 478620401 878888683 656984243 717499885 941475231 42195985 393560726 403685871 785759297 57255114 228426083 265401360 480106659 727213996 507783725 954973934 50728105 606062789 617790764 891473298 198080705 587057864 176221985 90339212 559520593 229273928 101261265 536242967 746825980 978805249 740727850 651383376 873333110 985740315 386359217 844646344 882414425 168560285 290541114 44427850 942927378 177551959 51004262 100081060 449513779 337779325 30422828 370161313 42627258 663885159 922048753 10776966 556014850 814115009 862767639 762738563 373035241 359643607 410951006 705963244 570061890 524150422 570478003 895905514 298581903 625953880 748602886 849841772 181737201 866992502 580538161 783640811 893288415 641121279 124214552 843915612 551037950 989068342 234189525 983394125 466856591 655471400 304950964 733834403 954264434 778486981 838903043 485252283 112599392 628727101 6661221 909796605 80812331 526799147 648682903 952050181 899592743 434385237 638333691 832316805 562398772 795575920 345337149 325848946 618704474 978429542 150575139 934993504 65365325 610016844 149594385 905745698 55284232 273192485 829718742 210143881 419832131 201763725 408178938 78509610 190704290 278008408 100962725 533356151 142415010 565089430 411801675 391404977 387602120 116947816 913452309 841079845 153682210 346358075 105234546 939519330 898203351 712458969 845700265 814164815 82969057 901430753 301784743 620783765 825596100 280958833 945750580 944033873 385764150 849342146 407221473 525750538 894358026 233405313 543243271 207968277 699285140 497287719 638930828 367174472 555500269 193888883 291914309 227585089 753469180 732537504 787362798 453656873 432434631 825106645 208934990 946755880 505330343 619189739 488709645 591949776 712205354 997327076 858438371 924999653 883472915 511583839 982220507 454853902 908155767 37624598 851182176 604604584 113100124 609160138 858733128 896966550 816022622 339592975 390159213 721495842 852300481 782747384 297116230 39875104 36348108 630634938 676695692 959470423 157342315 588839020 410586050 228805138 406388704 316073060 178142751 241433671 361401817 337457951 717787286 449943027 771736048 687023846 136843230 440251275 223233991 82737351 528711754 412198017 434653166 751320695 139845876 703681867 388225199 757535391 883300995 177733775 966114522 323086477 842677330 196294115 595912160 989045866 963261609 307272090 563162612 275707343 540212441 146924623 364511218 1534938 789037395 642533538 910016666 489808487 555772880 495371929 878017265 708041712 655961397 674899167 784163700 193748790 536857976 27580198 672898171 500502372 843574507 736742101 305556845 793472131 949595301 706351430 725345407 921869213 804002574 528870251 640875721 183494596 527098870 547684271 270683721 989513899 737487639 44646041 396348310 951950830 311357939 274691415 349794573 271477247 215702050 219664664 867289564 216115091 427727917 912168617 274665893 314237964 814764174 201581017 930003940 639131274 979668480 110647957 256807909 615071884 116339017 186401551 521811880 697964123 147617329 884665861 265798045 16467434 306595428 213303669 947256713 642791424 847819567 484185606 63374332 562203407 353871965 694222877 864109008 154632415 929280822 518189983 517279227 244129780 631371261 404226331 691661574 225987917 49989229 859243778 183198964 885221117 872523963 983206244 655672005 43043998 906976609 976660379 171629119 639498906 378368795 655265255 811861954 446506977 841795070 843600814 60781477 545301144 580097950 797669054 975196529 59267303 427952889 57570151 934573974 425954597 673317949 886693728 890691073 371498816 971732622 76340409 670445650 21819172 581467282 44662480 645419688 686585986 119389467 527542800 724236258 44357660 977706635 804643057 24993818 575022098 267645327 869967372 107743685 234259518 215603933 667341018 711214349 20102743 373365118 924803258 159613294 45758925 969516286 966136063 257697543 314019598 982283970 609715994 287162430 798556325 399552879 201872527 446382091 162369695 526239085 9501215 614728659 68662071 663297942 4510482 632627706 421954586 620240315 603085577 147702509 334329410 742338854 449337516 349411058 207012039 186690241 5385216 959546390 987091244 512881268 692677931 177282060 481077922 590766643 146296617 312780926 290842647 163731619 519732020 3083113 940339503 314354035 365296046 989870550 968861788 913148164 290324719 315870229 15920936 98876001 890666774 400702085 269238712 859231992 130704577 634341881 719008158 191694967 185526367 943555205 646561501 443393485 902676494 610595318 197628418 495850154 489220868 782561420 835927962 966444875 19222444 759981485 4454637 899527435 879032564 724594373 985457292 549046251 368867195 616357420 607640500 546104059 591728689 359548584 793826622 525448269 709833041 703863598 92388157 199180673 207245950 883154043 630412041 308303290 399331532 843179183 267596236 612754639 620860913 753413534 620329553 700758089 519801901 685098765 199805531 392121572 488531457 725727371 505472428 793129342 643884386 975141461 893556699 601338156 747177270 906763363 934854748 132016170 540994325 959703548 123930941 174607201 382415980 860099273 79664404 186369630 360244862 973241602 398082629 615302281 320959062 364444834 680713681 395921283 604084818 352909803 136226035 380649912 206220895 466541207 268066326 411501206 341143845 72639484 492702369 775926895 295210460 181558697 656058979 984521008 451492686 678124301 475025271 266436644 352094690 425477530 977135520 771807198 770386237 520126728 211825271 911700097 334722753 215017657 30720276 325100997 446186469 886175621 66783384 618754597 757956610 923738644 403452467 524778500 490084321 962616016 793513398 381752090 288750489 791151390 415732183 103962394 953782882 204386497 561181615 635395257 403250888 272711815 229744171 718941116 742075069 391607077 440887089 854618238 376999419 708813775 343744207 271122372 641925155 403546132 127626315 411916797 39318709 876757651 239759917 730598916 17090949 156947698 820233583 960173242 135301306 741640737 373999505 342771230 790464107 18655223 219922174 947927509 732109465 240011594 120159069 479360571 735079808 827391068 292564849 350109317 526368285 374704182 965965113 926314389 413246264 98831759 229916439 677619160 92580195 550687588 242338197 746925669 17938419 778490420 431929750 404237905 425924678 238906464 858763935 672908425 240374932 608734414 853590675 264451442 896831376 668268309 133930801 266870907 996032110 687242080 650741094 855908331 464052476 68223321 766037107 288819852 208266200 859593028 826914336 632145525 478960044 365052527 99033739 697227152 17099082 475135107 180078401 670957627 71343864 939798090 291782207 983500296 862313246 771112865 479945904 758439420 167620615 307854283 549231163 595182775 601529462 525573486 179778358 89227789 281875810 289693498 565969564 967428967 989933477 474303644 90572915 570667335 40038658 4356790 69027961 707016655 182072694 797465595 170976843 229501511 320841221 640239552 69570370 986820525 549556668 966847744 913632318 303709212 991395191 30934635 95576895 231135271 81777604 720751982 203590266 275257050 230112221 774230955 802193208 791199082 398718202 320195383 421439046 595079323 564445473 825425357 199608459 7180657 357607634 731817799 888658311 673724546 893641461 92193389 571845748 988444174 72580858 576306938 274949014 142234595 824679890 870183217 590519339 638890295 43810856 842310516 648672357 186624627 211907361 831965191 939109845 746220032 336953570 330983898 445710450 913347312 511538448 551959948 208410131 360440251 995354779 265245646 981879619 693486199 180058359 584099972 622067105 147995767 560582734 831850502 975706376 923812891 493666191 800340741 176878235 26363992 46991138 876265308 701317491 581535566 433392953 767580009 468340287 211667478 742936588 969927107 206882887 964845997 273981885 43907008 250548417 228266705 796407688 88263563 994988257 153209742 11325683 598205111 485605183 129872657 404570304 320267513 781819634 76523891 874653773 336251337 565568861 754159799 938880709 663792918 202225413 684903322 965491672 30723284 990305396 879105430 207712385 484231480 980503336 141105352 597098052 688813019 547296671 231051456 991828339 607797187 403406069 83891291 40223923 344036914 134255406 764247979 520764420 971813528 63731444 704037006 503449929 43045031 304338 8176197 125173983 646212053 644856724 554556431 320430475 911377760 104162263 50636446 393531585 856063611 561315696 219697945 460703765 798932864 405309394 219449589 20850216 783118050 432830183 785088073 105430884 618624917 813103212 503535870 343027588 173868119 399396049 942582426 150474850 554997122 392692432 857433807 900487998 874051389 708888386 181594111 590656999 696179270 481279365 545168630 855383150 627566716 711897262 16217247 79574564 528739265 999560457 442348989 797321273 591602203 155699786 959742645 258843275 189796384 865180351 167650752 473791642 358959050 274364107 104592034 688833755 124779017 209792309 887153988 586918366 799539737 794921002 256436813 355867222 600062267 855655156 528698853 206722719 6672891 432988528 977109346 324187377 381651193 594417723 429821430 700323209 508483252 980479748 93368080 333567343 265566844 455477451 913180708 645138148 184921844 895725603 362054953 978562235 864635960 878112741 469523444 538756862 671716614 809281298 899199054 665691109 152955491 515295072 773460385 971794809 957549177 954158124 676382897 739809406 202651352 378523537 577234318 28872758 554299828 681114029 312936934 639678643 93777288 10983114 77086356 689342664 812185537 429611149 938590761 120901476 129791223 624055686 591771873 545071070 948699168 739542876 454655617 282642552 585434024 136720321 306173428 157081908 13141717 35302334 963319562 939719612 548530423 955761580 379889911 659440587 23842145 919514390 288005011 727236915 342839362 188764986 516663574 560670564 98325417 732431094 593946636 438174735 648804294 45136371 240711706 520803348 434047161 295625095 80139760 588314493 66409580 18967850 448037712 764448633 903188268 620319540 721775344 936899910 668114539 373212140 961961480 610297154 298967250 594014554 769520430 576955864 167927786 482012444 937586279 372502533 705388669 430097438 627550664 992274043 880306752 858398917 721970485 653114953 410035068 703332331 370240654 353619175 157108842 292054255 198346675 357456921 108155897 210123841 278847663 407724502 791868999 240158896 415683010 408449353 14112297 250218194 316140154 314739068 605979135 669041100 275744601 167292102 716029478 81587278 375624894 180358908 695427710 66963825 274469893 904569990 905538016 898122706 155509258 266342790 416058304 241915622 431823867 646916148 910463864 238956642 499427750 605043741 705008823 149668233 661534335 552814714 561282270 513963157 741643819 510210458 244155164 138302747 150845900 482693387 696219679 335358205 256712518 295945144 498183021 624397518 214911211 448732809 736550923 851227577 204250693 566698727 252429544 215181400 977631734 166767324 917925984 99898625 394493844 700179265 147914648 887631232 250048804 578807604 38186154 500161132 965991871 939345437 682567910 942400095 911401290 198747583 925182711 591641089 953372953 356879078 600591888 504173355 430692345 361402702 278183904 5283506 211937134 606442618 307276432 358811033 361319028 912653681 527593428 749426134 287487915 340346388 887202995 176962502 275532839 885495791 776125443 203013944 434397884 375069291 998593109 647872459 485471867 614894286 368930931 591787490 231258937 651795555 967073957 964726665 235011433 927148490 681281836 339012482 312994260 516369054 45280192 963458315 810008872 245521799 481946245 372962231 192625189 953246129 309771170 707124091 99365252 560381410 111496962 479460294 552681321 392076038 387395893 812266420 672067326 408833905 562593552 593812786 684252774 240914707 327358539 194071182 590853520 175752492 341958557 376983167 273600255 955192801 392669819 141230852 615830446 497967463 252328400 539131687 352103572 219848522 273538017 381092372 83203676 379671951 422117226 822541178 783338525 652646006 960849819 780610947 37456572 911187183 205480727 677263815 555789891 370114216 672665950 321221672 64124246 121301258 623496677 598088677 55299471 124484784 681240028 628543895 558125061 827703864 974379559 912862271 902666920 554201667 682354870 694064711 224952883 767157644 418952355 171871222 854380499 880347671 154871694 91389739 675699159 198488989 169273964 730773181 368076749 954289934 743143197 724918997 907013269 59038820 757324355 90642431 971784468 501039228 81920135 499838080 366314819 544650356 594199712 522775582 582871303 425618965 786433267 472053284 166372727 856392213 569555903 803576783 164446960 397377583 600940365 27083728 983650379 581955337 674984271 200204705 524263182 758305512 265372635 896844189 816575074 532091852 912224992 540624518 39952836 275455731 237303063 801279540 167124291 376110692 570932655 620471538 839406277 957890305 4936737 656074542 379840602 103576757 899941188 216762636 143464645 685611828 674231438 177785122 655584917 188110757 416106316 886688147 140062058 287893464 13799275 624296244 31527441 165209303 86614443 271318061 14917370 140818055 728515687 798455689 515566101 830628982 257733027 260440491 112997550 405204867 106087035 351260640 821651035 702265012 199069313 996465283 618883933 124948642 241037550 334759525 382355782 568341337 563069209 398866214 525547008 688617260 328840398 974553413 294314521 970103248 129476949 794801287 358140498 596930620 670738783 682541401 616627127 306266522 225129218 650245566 409734217 343513984 78149740 968517118 104283720 935330900 809841940 200474297 496980785 153378506 372098811 790234566 556079978 982437840 178131110 575616745 11959152 941892000 888574397 819246248 620402811 865191870 723214830 651279629 743828514 649678669 993994311 921053101 773989175 981074526 674028420 907486182 282241620 799838268 635597773 320198580 533032921 924111316 806491803 947224022 798669144 866929575 187621771 234576506 743448396 852976380 234070242 939165656 717042676 912173106 645723559 801524050 461055734 298720421 99196212 621831142 266455965 283756739 176500559 965038585 147446996 497120611 569315088 355356782 463689728 886514002 296567170 672454331 258932980 333005297 964480109 906807246 527309059 422622779 463132511 592208951 268196216 109854446 419317218 721613104 812024800 659621796 550951231 157402059 492057077 708491391 210708385 741281709 188190201 568132821 844078669 598675585 995210823 922873053 546682830 218569519 809082121 278500520 71443906 905480017 145929364 247855460 11202135 937218985 521604621 318484137 246431019 125773351 835012372 583267878 515343145 987688875 240565836 559761297 337665565 215887592 17186838 93040122 109627348 466254671 558060885 274919955 925757118 127735169 650176458 982803455 641255144 125256841 982356716 541832323 596742371 864050940 670989121 917759590 706505270 992594594 833460650 448934611 965342087 151129591 762976787 858885105 670391709 304777414 363725251 152547428 180403837 722857853 693511969 343462881 903837196 340386917 189512732 456266238 92285427 516628691 399056632 583780562 634077686 622976487 542088147 344805650 33024066 944866226 178986898 354513332 792788255 735019632 831787123 808404018 764928655 55710525 118850063 687550812 693592747 784320646 475159918 290349649 590839871 664190712 307578632 211683402 234224215 25922823 223820129 521885066 242809436 477970691 3980103 40365780 129449548 14507156 396057893 189898251 675547025 366505537 182959167 994201869 232016659 36820052 490507122 540048127 220592746 836554425 619259763 93760746 294255363 486231587 293667627 38029207 277556239 496335723 397916631 615522224 50733760 169596019 500867611 617901344 837943118 713627832 162656003 536454307 894864500 853311980 554466876 910889866 118517576 42748920 865315226 431598972 757409299 507359894 497221380 855782024 631266598 914057860 418213177 562689142 525271399 56961035 723150271 528188309 927901227 772571864 416923752 911658856 287515302 72290431 452758432 576603379 649323233 799902152 345310900 762157653 737130614 570432003 924617758 230296289 459963111 458056870 892089349 622763127 120275438 253253401 832705124 499705269 34184700 354201542 911896034 417941404 37359603 513391874 546542570 359654738 471306025 830735296 795855842 32005521 544125345 719439537 925140276 957411645 68348854 33588939 806929896 358015389 375938774 439569499 513467819 179617805 625889122 691851129 838408017 105437623 889170866 543030942 333831079 788808380 317336558 386626438 837759625 275569977 805554088 652263393 73302668 568002465 156169554 4029726 581504399 541637505 943873225 643612455 663471235 292056281 37480161 148987787 446183004 910372594 945982617 242784459 999598291 230948735 407738677 329237309 575188018 905440370 369336203 735342757 486462400 440425941 849345088 439178409 144350851 637079603 818511618 557641241 803442474 158023600 821233847 971356890 755831683 148360437 271413191 846329599 790077299 517277716 938087995 440954097 577187830 67280892 27819013 918690871 177340804 110447565 597101016 707670706 304471904 229217282 612688156 360270662 475610774 442849119 689341450 738329856 403555740 824320847 987979840 592768263 828196933 627517312 385099068 693891903 664415206 647590346 760785858 17631498 966758400 343406984 573923433 901214465 112305070 671626612 448799549 470797292 63258383 784932962 352181532 882679941 281717006 638320508 345962377 189790868 967432726 236049843 948160510 36795625 983642486 396006992 994758869 343825933 727843941 254362761 718039389 532769363 104006000 475279720 600786256 416752035 882317916 901580413 229079370 257453340 417615686 488182567 542786314 790749748 82550726 769521934 90569583 311722819 159580614 48291967 19785283 692551329 212116889 923874004 714945311 665811245 28256538 361209624 983840565 896062184 397200595 408841372 489600680 442552732 120978946 588424370 930707744 7166593 642240257 748872703 359254821 255280321 675402815 820737045 163251694 340570111 159494598 903814076 20222000 735453562 890404318 247245304 991522633 853308818 789392523 215931116 997446838 997110318 823036933 12080045 328004473 97854771 841523984 687443163 438781871 224137483 659127364 955746340 649470217 223765461 179327390 320428410 882729627 48244117 504011363 276024561 156367202 536517042 559240256 508871244 147047472 170938366 149685726 217699430 489129614 432230413 261671888 20042061 763469995 785608073 813382791 423134935 720080402 378814399 569788912 352153226 259040207 633498098 342215274 613466412 508934243 583481358 805603624 474082807 584891912 172620099 186726769 376007307 720715212 443212682 493035970 670737569 428706959 754187036 275908705 577660564 973288225 769145401 631971553 919267495 775202318 334672445 108360080 840657980 354965350 907577932 144799499 19638368 589771912 577727136 41757975 31052743 747813596 48167312 567171952 950594782 482341239 582667814 147082181 873214584 200776474 770851332 298455740 613484134 315737826 300222363 185293071 841299055 673213433 287116153 893264 236433221 191657713 765790799 770795941 253022081 59192876 114159712 583132031 503449210 876141916 582352694 687892988 337051855 542325358 203205686 479391975 874723771 766789389 772585185 278960170 143503515 758059403 884096331 671806728 287969429 918242647 855757410 710700689 330046371 958269857 684216068 601196514 16610187 176474994 934193034 620376806 190742190 339704019 436087451 593511403 858220601 695965270 23812125 127020072 845052329 533920710 362978236 242712516 25437875 552958870 101921904 355273512 351412973 518770862 346205524 346412440 82847097 649385182 281467734 321392305 35316385 960653557 309041665 484044756 703731659 48680974 828370767 344255146 71130058 835641220 732332536 622663013 77122596 806900152 128348023 911076785 923116617 310103798 817439386 941273209 16435184 77577766 926839133 347952829 857588637 510596801 700055196 894334206 837057811 392232370 36946737 263087150 678898061 240472939 841786663 53998740 686390703 860136286 230023568 213033794 50827062 827420015 317245217 84710625 516544812 440262624 925590009 234621977 710427125 271573744 576694800 757096980 815436289 817675033 393791947 337922927 236714729 692951999 655497203 834878610 33911047 897762827 323640808 131919322 738157438 606400161 271393878 802098387 336775387 691557093 335642861 688125059 311366207 704944110 272980375 401430184 728323495 831682614 129797242 198820234 311393866 976640032 980747052 252199354 449479320 114455820 781886435 559951383 408218475 232741085 277250368 226869335 940974272 330708718 168451615 641650501 372357463 164028184 439174229 492018229 184780151 579359867 366705252 32510643 349261217 987180170 782891286 500040514 390859440 717946481 954553709 733908443 632979005 70730112 129788465 973091542 141561461 102246229 995233023 962815333 258280660 551801950 159113991 891179492 760933366 749053321 609914980 530478827 37945845 924086583 922154798 172072747 141983823 685382068 921788438 237956412 506548226 472502259 399570055 650490635 807918816 464492506 856825744 393986535 593259107 175386298 260847586 625532601 834053598 607108828 441707406 581442222 463355774 417631748 53049687 404304876 831453069 362113412 122039534 122454155 378573810 601524846 355288727 812239850 161498386 447363244 671166725 307708916 876024806 532461372 830573125 425987356 161105987 668601075 124170671 893701255 89794878 915782907 177722933 126806392 618677506 137354710 300012237 70645112 801317595 638222459 310001638 908539819 119082338 113470329 908948011 192966256 888813166 102235719 133053621 471778163 782111389 579916391 852459551 862355363 32488649 855704557 989048340 263851317 490697827 403405953 342467162 990012061 313321823 370965806 78447727 923097370 227498164 258419702 163811774 425471418 389232336 965976097 116871962 212829845 125674562 413199015 66464421 423036565 622020369 181533883 689804878 466058754 397574209 354168105 557165075 588646186 198998145 362964371 524608399 940148977 40215194 946868899 908692576 382339060 860219043 265521248 487234091 815916477 234209699 232310779 863163854 146702830 817660082 805980212 242542171 705767408 181094807 199391235 909370620 861626803 738498505 89550636 668625773 280313528 109645187 708780091 830825640 692008507 34442180 793473104 605388951 152408689 214606003 947326731 805959693 311499028 350853773 765643385 52603562 992739895 250428810 579980219 547307728 71601662 347954814 277221322 754810979 746642911 622934537 47009801 58003421 123650854 800374016 793302080 206162952 530481867 112540121 716679415 266301814 8501308 271348889 954899348 338864169 228897961 215677755 377252083 270665112 567788098 757228791 45584543 254854229 61562051 646506089 933346055 648118650 9722224 702111747 465782895 188048504 532020170 811891175 569050863 318641003 471540136 660311363 979662054 383901758 693165501 464623629 919413895 142083202 529150948 243716819 703267319 838557954 29765881 420641871 397829667 367941700 737619783 957099121 789258413 772889007 987243618 792836202 862286611 84008630 52350686 758036210 530546148 808019029 465838372 235066676 683511169 759380811 846207083 476224237 172162161 179023954 709612299 616023782 361583453 14165157 472853445 848014131 184296374 89620532 969002746 121180369 195063558 878491078 630080181 311142807 746359410 254708192 363671108 871511519 957959534 463084347 238978689 671699459 398279238 716717813 269181581 759751736 135055956 548760193 955295928 872984418 720342912 659920566 751355814 612461841 473214951 486188728 334452548 682291033 155573456 83386496 504860275 877164640 296075704 187864269 179801135 126114438 587409371 817988291 84169586 991080219 19909744 600910474 727693783 11497565 767260589 3580286 560506002 946945469 964813863 353184154 655022902 941269553 673310477 284727222 758867210 856369425 865312667 720641416 491405238 441917206 971634826 518459241 358600879 690775179 529933570 966290393 670472743 108963810 964006150 386543950 706124678 218425293 858223499 673858454 434782998 488151171 678509813 754979096 959799108 263619399 370541255 806123322 856240164 33610480 268625445 695758069 447214417 327229873 236102577 937350338 334567759 899216944 770135360 236910036 693166856 939800201 802311858 94592792 778760039 239882676 954551292 987470258 260966069 966562236 783512743 278390916 201958442 562908568 232464315 539181146 524727505 186255544 167685893 116762187 145288247 219287655 557877692 861803879 115160806 969077271 887196851 560556182 352969393 127457964 534157033 761135565 279711285 96355374 45473228 13202048 236498739 244694250 954668350 785620669 485061299 338964325 485311474 41619190 760296024 953124251 719175674 728025602 715412763 172506431 391752906 446223545 249907498 693146522 939397253 250834121 561895400 177345500 295349556 204389961 191782692 908035835 80289575 569383670 882908995 764357781 488555740 174711701 784943692 445250332 47012882 960794061 557140544 116440408 380260018 121601034 163418270 793963671 303454614 837757903 721035618 252808065 230704307 425940556 769694894 506192804 607945230 587176542 105507247 925710478 204097682 222381537 468428764 759878560 300242964 597543023 686100947 986484010 425497107 98357795 254608430 721726136 274208572 66260889 701448888 771537701 869741715 178933275 235038655 370152909 144746772 764291325 419255675 58878761 17393172 860667109 947278777 548215881 723755904 563193495 933904522 564300671 346452746 930376800 946312002 883883446 205065982 348208768 561292314 637476786 567214021 177318967 44424255 813596093 852263580 164839428 406769029 491320824 778939815 643007691 304304504 147589366 239711539 771832978 814065910 232648253 354696504 988667021 191977201 74001367 125868752 79907734 228263310 793359517 120571186 478219190 236416789 326146758 740250368 760659632 286346319 243140669 601616822 4375728 396687370 801096203 181803995 234262240 931758504 773231449 537345181 914647981 670074942 910028151 145614483 562568217 403696729 645811558 840094391 729508487 843052415 389188903 410123310 940987358 916899935 694092664 839239262 219777204 567113561 462425807 113016179 224903094 123116775 510305755 756640807 104043226 819993057 498794699 189707043 148110740 267314222 313237554 956019457 508862864 668283642 559478658 240173268 286125264 863123411 852875947 942419798 872087026 858485062 4855325 282738654 357156971 213979262 418813877 998339904 922081945 583887545 438287166 967032144 842588874 103909705 470518120 546095764 956679008 628762846 176349473 68445149 493579983 904758335 558685601 856161821 206307102 398586397 189491385 28073453 370490130 191514939 29889953 851004127 599432931 828153709 741203381 747096587 12788107 438803989 163984890 541340039 284780423 85997331 839178193 694709580 344703899 952083000 860867612 282051320 118852876 92069543 601597180 247652960 764583785 804306147 696052077 873644265 18830204 335239472 667398984 358006917 655493684 679350558 984757834 279388375 283579587 380902541 112638957 722005693 52477541 320055594 511375705 499124936 116571597 612024346 825014553 443775443 363967443 848583990 824379377 706376446 492722171 407682037 318835002 81574039 662341241 625046921 731700430 343284430 222634739 631168194 816080361 903315148 372598012 592760886 873665866 390820588 551538204 761461833 424927519 125077258 815525181 594219292 798073066 796734692 3595431 981948474 705597488 560170065 695092140 541395108 308779813 237710810 809175564 774095059 573587876 684335163 289560401 584052177 787082456 582525064 685050905 906026048 653562291 872514287 958607092 182134500 240587116 910368190 246224973 356476084 633492775 58989400 190746495 344793767 744150235 97486836 846784506 72462917 837584793 694669304 66872261 966018388 103506252 704624017 262172349 18586536 522336585 345134920 986358796 470992260 587445667 791255363 778129963 525721996 813643001 744919559 229029545 365700195 116496417 395836924 83838256 372868810 66074554 966904287 137504045 281102703 301882347 252902295 430715831 263639121 706007674 476983381 125883420 311246788 320156234 554307253 59809600 976730048 100119336 545354467 942706063 692394168 83980297 720435791 6020790 496593416 455031320 354340861 649690348 694740264 983521156 247042313 726585521 334945017 475139409 789665070 288229579 716115390 4387820 459623419 187372353 929517742 733764414 495805909 571152911 299242916 799735244 724493579 339806080 899220967 842816508 441766414 350574311 379586294 977113846 274944518 809139196 597722862 365154661 225508571 655309611 862411959 982580725 934907620 482064736 812950131 758590082 110236955 958739404 737192526 716823574 109691371 990592828 125983341 524276215 368352847 91420424 506438853 275501822 244589533 867785761 115627835 696230989 157034591 807854256 240101701 727339876 701609173 389237323 112134734 98029258 51710555 611429577 752102146 421373736 82947453 822991637 197557264 990488724 724013629 686107601 98984101 116416714 956948964 51365954 98504294 670912185 64189321 13086739 691995569 660098237 402665796 184204405 10250093 135390725 207305958 128097066 261840325 336039231 636637221 64470862 941474962 476308004 619932908 37282301 760934195 447011133 253044351 931144653 814114329 252635424 495080142 114872124 333173376 265936434 916864811 798351449 747512712 827984514 754661 142073740 38035267 549295440 277353928 386285271 951608527 100315682 542367842 165150239 472299290 85973913 821030511 412039700 261644389 274356207 926651016 448151949 219300608 135518747 198023191 825736824 268274043 588767231 868288921 69925120 368737858 934654704 677339993 966245468 333157528 894022656 263282468 672546663 273704895 929843548 122217721 372148055 792807845 850547563 477401915 629260806 684693648 116117771 701723517 741584640 518913828 249941665 87049236 18605386 47618582 773430135 108232282 308678989 744416574 716971885 506433598 412558735 593190168 652981334 807015761 397170497 906986244 645409239 104841962 316155599 997963163 518610663 554963844 479468833 753802298 363892633 301083098 13821795 409616673 837777194 70516404 477516364 794195760 976956979 596180441 736746359 668415391 65241182 993807971 726450684 677293388 602677800 557343243 574535479 274484852 43316167 342529054 181644713 229735854 307586567 338355247 446133634 550413945 498430769 989035560 611768336 140167025 873754289 527146894 143673172 444497539 236238886 879974216 917881241 562542484 831142110 818825469 852985137 820335200 559590263 202991591 180161923 157114497 794464789 609552636 495374645 899936061 68748976 723321240 7813647 328314149 276589790 128689269 219237502 286562447 599056068 491664338 97886378 952405670 94915210 548700367 774565910 317762543 222438088 356465913 771931567 739018506 205233712 545970811 139824012 657784173 714395437 305515804 166953316 505375410 454047639 345587249 866129742 65050153 80704092 124984917 107339152 477301850 7448644 682530712 537620039 846594374 820624001 788068669 309228315 142512609 23904074 128292631 514760389 24699653 434612489 168872614 122918272 685796793 653605143 307099935 703916570 639358269 664511494 606913003 486759466 490745187 323170009 291036463 807646093 424983392 369265994 606136405 243980811 704913987 117871619 125300760 692585816 480524959 402317829 212482274 140615852 176320358 185516638 909275338 99860559 316907222 59414620 143195765 208249305 440893842 374372968 251729181 565489495 902483978 35012168 965360945 338688375 266025122 966675318 560937272 320333928 492115540 552817255 203741089 263559694 399661574 673946206 113583781 395027652 391136688 602388952 445290079 484937914 740632660 791353286 27914854 991221753 644139345 258825952 312629945 381801555 636476807 167584174 995088991 799717754 838539602 449813872 387032247 450734804 51733336 420578576 824591845 691326261 8154051 422234788 518385250 492326563 371747473 373263590 209402866 510732110 554724147 723927460 628977677 433624160 253315154 332124102 986906903 325841080 185278411 251902203 218376836 155503257 287145604 921345469 518753658 394669502 656057406 875218914 735778685 619326928 629769044 365209828 134797204 864621820 497610725 843927966 23337397 634855787 578804703 408573812 137940740 437037241 101059936 417126765 686053847 355856329 14016296 879578089 882868075 707159168 267148111 741511408 294737577 501976697 840446531 972598316 188676483 969153924 93093216 708186484 569794733 253587206 393797202 131093834 543335724 662881147 824356105 209525371 212021981 15907430 235917544 897015882 653116210 334837838 941017915 647866394 722160509 997782424 143465127 553898971 936979502 485856647 35880843 540725571 623964145 180282309 274207011 833324923 303907941 310691858 697835443 997135281 847126755 86849936 335055411 55649133 501533515 378368893 971598684 506495467 783198091 235809046 973735526 843432580 114445349 384882958 791785174 364400867 684120053 652089788 181368627 418640950 825515530 226085546 930793208 940404994 980960888 963229937 695828865 312453007 773896113 610333231 471485602 719559122 868663453 585355939 669970005 236295812 838331344 379316534 19694392 916432909 348667667 385937647 714753551 281715660 120918181 331149189 627969268 837481686 474648462 314575368 299984504 880744390 343649152 675468279 511374180 923356282 86980259 995464245 214807917 473805049 41946069 458437079 230087282 663646007 15589051 459730912 115038481 242168490 255780895 463651758 23436818 773652980 298661840 851459032 935119539 578934780 317026928 324660941 276662008 520678135 951248064 228703937 60612547 467976775 853546829 787486690 737329263 167025064 525085472 896371692 444788456 910373301 119436622 190178067 236403484 137739350 190537841 878684154 589086591 632951275 965958983 674534385 666860016 930610292 671888079 28948393 36525027 512682761 356207767 477041907 194950660 516903575 433818379 58631949 746879334 384225626 429627435 504676018 525032479 321990918 604981067 146529525 430464307 688816656 184428792 276903996 764632759 655831679 132209567 317712858 479735106 165487625 926057924 260247643 427674158 514594911 208126513 241294350 978303105 274091416 709496071 729430040 198018197 999987500 745474988 42606010 21476484 993692447 200374884 385859951 171366856 132021082 159482007 193995600 58291360 366050467 778609843 76436941 457410078 161173228 200411406 994055325 239233180 199779872 113727218 28302765 995123052 896469710 618966856 807920628 313744968 380590828 562074803 137335827 179456354 256235733 709743519 725861282 395798754 400601322 649614442 57450455 357757058 42123030 837621755 663824147 685097553 211749943 450423536 42549364 287211695 400264048 212301451 357643849 255744810 81328335 448000422 99902526 236212226 518958512 216468280 316291964 240550397 642597522 502995254 345930125 824597157 597388303 995396971 398343964 985146160 512930344 863992892 43864367 981272557 875173684 956787126 129978714 232415226 576345380 951848419 583018404 268829036 403753422 324552525 74729267 729048662 77554758 35928487 655121010 957334715 917735781 299968702 252388782 756281025 831780292 156985399 474257908 890364734 814653906 78226367 311467993 216872211 608217256 70883708 924421836 240367668 461135298 443693848 228108091 194788677 119310855 517124117 620799311 58374566 742623623 676854390 29812423 555096507 867556224 204272861 406303918 259421410 776571994 372909736 434982982 320362473 234973799 525471046 366651168 801617012 611892730 474513080 942868531 569898925 680155493 759877523 517101383 558207408 228691098 719069016 382729221 958016307 2431864 952989274 810436784 758396541 618251800 368563048 161481354 547840655 460243079 926732506 84267628 982086512 510414591 840717858 769917375 904774917 129228721 758055037 359465446 61612729 463494046 270767469 767145181 538314654 936061369 508703130 781414496 159278121 67206923 919496315 59555126 330666430 100692849 122890419 567375416 101069334 989321318 315412570 117152359 548837066 403633510 365184998 879919495 339769515 408103653 477402839 637509318 97842157 687830771 68126376 231034987 66265128 959661142 531457296 673475103 161205600 384457929 155849607 431010277 971707401 610050413 236625643 242240682 505349619 154193715 349313679 257659219 259746363 84744908 214070097 548610821 285892881 888152733 327665147 125406822 307894414 370330731 192696175 785302293 50238852 529527203 589861078 865099035 947230592 477130018 38178587 977163405 520682126 494296779 731436588 79582877 343672260 7753140 114537662 622609056 148104423 903722791 608541050 186807639 868947896 32971392 369648808 716151821 228096668 815399638 670054699 945537449 940562621 511920971 741035623 383034217 905171636 150445597 298979890 294044061 105668695 268524758 184772644 884052250 846998074 451250812 422364872 453852617 13904501 205200731 804228127 799228548 831148269 197207727 97107595 626773390 869792342 614479925 1821563 645063016 126990197 366023280 645578274 321341930 246237778 913903559 472318035 453944904 180024274 808324210 477479982 847385647 848239973 374938875 693225395 401067586 655859112 587574967 312113247 971476440 706608368 463146471 312760917 955796568 878980341 972652025 662287187 535860641 525292759 85783081 947971034 653728483 297377366 140018881 22785501 731588694 762845486 758013523 299906667 843936338 24801811 317385260 840404124 265929857 844328072 33556572 868410764 94282706 12493512 929159396 209606472 993473060 229456144 470113841 714584003 595192831 35986013 949210021 830774592 710259440 537517354 362444854 354620939 82185794 851049092 822860732 143554324 747380857 698335457 931574539 271738139 623445250 96969386 4033077 755506776 356427108 195697108 362080600 151783092 267141740 636815647 494341996 456319373 488267375 630923575 982490149 124209429 106607128 906057879 827996686 537859427 211839142 397295889 300354480 443364354 260869241 791759753 285511878 810569163 653451095 498084796 175868807 956100882 344466560 475565351 115435613 718123697 262042718 817435484 799165719 498936378 797312187 139085234 964931909 424475998 201215849 229214718 619458067 467073639 418869420 979178695 252443684 461455447 368066285 960253411 420308783 761488481 646165098 676874548 824650867 569814253 106030412 155710797 885303659 262974336 876396808 21544952 529064880 53052133 2079382 593265573 838401674 692789400 998748984 308571406 845464837 809313586 811268038 958891962 202744793 30078118 377032931 385650129 179313154 297309397 312142017 161164675 628143694 574792096 27283425 229987594 331443103 264171021 441497136 662885673 318761269 140553974 756053492 418901104 97489879 753870704 204126739 289525220 990470034 860685537 130932237 453867168 673957811 107724742 637206088 947301205 369084781 985645102 919717321 989535752 248313692 748358324 28507160 507375570 16129867 312852220 408523013 237203850 649909710 43165931 370641862 375093046 790190495 597448245 847147586 117303406 419533472 27147708 559587204 712232616 586529236 247383537 757800616 452296932 339811227 41380901 788274915 304115806 437719698 363234736 623625056 577087341 730028630 126255929 596301798 370164654 219800447 636145174 48830144 771916542 84934349 815423293 250422842 281130819 585366658 589353848 531524875 239948922 353009421 740688097 913268729 287362618 641418682 575932120 64136022 695631652 769836950 97820578 683718474 616373725 834222994 173969084 952288271 252403855 856068971 131459619 504219846 104865512 353765143 274152636 435679832 322499210 697288375 904162317 909350102 200898680 726117690 666406754 276715280 579607748 59411045 931539775 853264153 415033122 574738240 36634755 854499786 265758802 489584336 192967980 610335531 711228901 842438545 396398070 31498715 571180288 141351055 748663927 385140458 424500409 532764814 667253875 738398337 377216796 374271365 800298041 823272394 443230022 858894772 194844077 878418990 335395795 822406058 677274831 827567358 368724489 33873117 28248547 449166569 619902448 320230413 174947904 614009401 507210928 982191194 967604234 230462822 983519347 996872050 687015018 329514539 133474699 850242234 253740447 730523997 240957688 984350245 11347083 424769443 949860297 800906406 903579963 110761971 190134956 849604226 205448680 152863364 561349658 163996585 731466808 854829120 692743855 109092540 453765634 668820551 324264598 615255679 559581433 327361614 270366284 439330172 196221353 232982337 340786863 946355436 81444301 624007770 198301128 955978324 807757893 460409771 57772690 161784639 651180465 230682982 119744674 810218159 871025966 498234830 258500693 564790880 95964778 619246852 161036487 164034504 506840519 680278366 819042581 577694318 570149648 748946112 118482690 870479955 192003998 581960260 954443654 574321850 70776756 285142092 162090563 117429283 489821059 934257942 435685103 341242427 739384787 611976801 186014103 509234815 783367057 628932954 799829400 722745870 809927047 752353857 858937379 4137945 896251884 476697255 203644734 36856530 977554893 527265427 942396610 663285563 833279431 899879128 490883003 926452046 554130065 84766889 430484749 225583127 808155096 765013276 842359451 757785940 80824341 578462914 229111890 731113035 378400202 661661933 700887865 230932455 558727742 146702339 24750634 120197057 925168459 14717731 349336686 672838271 508216408 631238743 237257590 409181967 671572825 536716808 302416065 534307560 876122564 744559774 27524110 31689299 515380214 647306079 262365728 360012223 778127393 183048277 864576090 593785383 885942890 545208920 655372984 327775841 770169311 604267392 738193090 440162563 291031092 65518322 491997581 23076150 810004630 562473641 503555805 709749042 338335423 806379706 694526616 645373295 193998777 457149414 59420453 246715638 585411476 347683343 139633093 46990039 429606964 201314994 762289188 826247909 470458408 698443699 651472189 129537337 911880616 92560561 466249754 319618987 32732333 714918258 296955887 94639299 218035871 529056113 21140280 984124103 677912468 127999535 145827016 776481340 412920827 103799762 874329965 9361995 825246000 307139454 309610012 740949581 36692244 51465872 482942074 908579345 713243360 710249266 499536654 716241170 775396619 894540866 320167735 500891084 659168619 376921448 276033406 423872511 713440955 942681081 621690481 390964036 327615396 383207848 495653817 356185459 597440508 985940164 631751972 922790212 26431152 959196108 271702298 602528627 414229937 235947385 936990676 12151745 972702360 575986511 853625293 644267501 582435606 790080201 710582441 153719478 517909832 156376856 209160571 66109216 792179067 927899071 131864824 997057527 223654530 466412479 642815381 371180581 327278033 988240948 869021172 108083672 916773110 547775512 120198414 672356976 10999741 740818486 680342817 842620875 180550230 176306123 385061552 253811591 588457372 542779646 639914346 491713704 752108255 807608862 83447847 990344548 773049672 786802300 523792011 699308539 654129047 78885148 326480489 61380682 150360772 768306889 232440482 963704761 738925494 466720019 866099182 18147826 350468669 754740340 183257376 375846492 783756818 932545991 958277573 543895782 460162667 15353698 311024813 357836257 844997440 571203080 363121125 706987603 77606157 619440384 794572852 380111824 846400738 336051458 953005760 70090789 414142352 912540778 851935974 910788270 936588207 131447753 731874684 350812998 339950500 35840999 717556361 286292527 983147857 496351932 853654961 795158402 498076215 545977298 857492445 767779216 15827131 107378403 650701520 88377867 850838258 150433522 644048762 188141079 514480803 536111423 843214005 26316066 357341907 524503133 644300620 22059410 326717824 558492909 131814290 634806535 714160743 471402371 497448412 576736630 34414663 243065338 98633645 740469176 133765618 568606812 962350377 135643237 286252969 573579778 62879933 884505405 590720397 205692498 563179053 457605076 116510945 747381245 696894953 49639624 921076288 534540380 986685342 415076931 91330233 341946140 254501030 182032547 509972057 535922806 328302021 985093896 273051665 4714539 390748702 738873731 6524463 427904334 165344342 926917497 915705684 852116343 68953148 745433863 28702258 31783077 580497793 256331175 806102506 558357971 41674771 19224038 290852361 827528461 876644506 555838774 544796095 843114068 714221317 451997520 260925336 297206657 911697734 738194924 752678058 743629279 459209299 547032227 989561957 78082176 710032857 306454510 481555929 397352675 956793017 948762692 700052303 612773688 79495392 439059029 487677907 712575160 732588933 725211171 755484367 696196942 898642347 385953801 32313839 294499966 848818003 804700012 678247723 285054239 613825920 813056098 808207836 725232503 597267394 977050520 924970197 698975967 477136156 742244484 652165340 887273827 296662217 276900010 976504994 908929166 442849911 753705165 61555536 609872437 931026767 282219701 797499518 635497043 111441390 167365265 238106355 225255378 625250222 13138437 110693464 738210605 636629512 95360524 351004231 965503974 347584004 172713134 345509973 866840691 610792091 993884487 2800332 92941116 477303104 78515501 980631700 938270819 170867173 837445144 844561551 755256723 677818075 759503835 633753421 413842612 326815164 277722378 189114299 168905133 924316296 896679068 954594214 738134587 775307599 863726543 462495128 939377119 125190954 43641789 42226094 18236907 965188541 968733395 388388262 455672433 230198048 770742406 604692276 727328113 857262508 171063288 822019567 931005569 233887861 89832268 57717797 148700976 33004507 74921672 584181800 838972154 703377425 233572510 636702343 115536253 38547276 867333271 557152995 760914140 578755199 835428623 740922641 713074141 460592651 405993155 862600328 846994937 801373199 606343678 489556832 590260670 300594161 347391757 738187110 452647777 956311519 728058597 595445254 256925589 246535684 958184739 993945942 56646789 577316593 730224359 865278367 355458648 511990999 551383674 577710316 379582124 40193259 225724062 794695707 907897533 118562985 721101224 81556490 619618454 763214282 972935494 919647253 73433406 281652333 195175600 89589700 477038165 785907732 694809183 781360595 411126396 249213905 416721011 297634885 133912312 762267332 951498461 369917917 781887507 331307767 566210199 391315093 966151780 341641462 448075872 707380393 206780373 963458901 587022452 165907085 581640856 346487646 135284945 233448555 491913709 550965342 852629999 896795257 335608574 5667947 739555283 847077414 921959452 915236453 453415807 17756982 426059912 78239171 36428788 70310176 417859029 386947945 899358165 740003980 389556052 817572238 314127941 813932121 738736945 347265693 159920025 996425120 159380405 541197738 139817847 895086746 209486614 417505807 205981321 102807171 386703012 975340560 669059736 970764152 887608910 532763601 583330841 70246668 310440540 611038336 410057437 385896881 729941955 145867838 678887073 10977329 164081761 192054554 549703778 825248741 576733025 167781840 269584859 793548790 26388477 201564909 746836726 829037566 274572724 283224793 894456771 319175312 945174938 665369602 245352446 811325175 777585524 708834030 839527525 127044631 345305274 248395661 34953923 151345095 955361971 318609086 621299091 830851851 281584950 223784347 355525247 649182911 838794908 880109230 701197084 791249163 518816588 496384973 896249903 499073296 124868548 794427524 702877990 427594361 798875724 433792631 483245537 717059004 150565190 183770292 874041651 72197706 562216521 10954762 230137589 81753898 722124754 852137689 183389560 284869965 290575448 35593303 961948500 911570864 728616628 527652152 553015867 111743056 275818331 600670596 723438195 1137098 727070507 3611226 166611178 653108786 917403842 432189150 814559713 188410440 818556860 332077754 787353514 568910769 862974756 325807677 978726807 17670804 497860020 826032868 500382631 578314020 773716177 551554947 861349285 811396169 346430423 688795191 87823359 513505942 863272178 225304982 670837554 786743397 352047611 956684023 918709399 899852912 636474926 331253563 107242867 524388016 253952637 234297905 234066278 955760619 646477065 947684715 890849137 391379607 636303452 858847266 254662039 749379756 634913045 768979436 853248300 513974185 643620375 229130692 196832203 899530199 250622932 625346235 250419799 915961734 750096068 170668855 641755974 414112952 247597976 519917030 279424665 152991367 9360735 70100746 347278431 588353027 292454304 803309473 58844492 153119891 935031329 755506623 261265160 34749237 904973714 714314241 695325548 439636652 330494983 941074819 131186128 31669044 125487356 148456692 958426641 917507154 814767582 933162387 350447927 597627383 490528892 733358837 867613544 475076265 868225777 833119889 172503245 425894674 455985010 345102750 795341443 151537477 969424497 904914089 519705968 583633332 72949197 839436839 103471806 517544043 40091909 597729936 463974992 415261790 688548548 25026785 501292677 222749487 57584128 65087741 872561533 864293405 621467036 599667261 510221870 305595299 232626400 130683919 312368494 111820708 930919824 409250552 22347256 20654695 294998471 189579593 220856276 69271988 955693629 790564520 6907858 302510466 122550549 577041856 236090928 699525780 340687119 918395091 530749548 631376231 889671610 84212281 383084474 238871082 481472376 430415732 344426347 720631758 269615930 310196796 734592657 93317019 7083296 234058632 636852256 14867970 302987937 207502706 495937584 876424274 228025358 554101060 574640705 994695161 722070986 135706122 50317267 851256949 426610786 669448192 978423319 125713981 181241402 428709322 731379479 401334022 586621714 541572513 829144702 345000037 253687774 282863172 888728573 520570167 465262350 808972865 602165061 616846543 885293265 91449437 750703902 294015758 508103940 55455247 172764477 847810349 540928372 555716287 639065558 355561385 781231694 128061818 742082786 955683277 522667462 397620537 709568529 514714902 724858274 342068245 372638963 946958511 62888117 577038609 406948740 536164961 489452988 881422518 843344366 440497166 369765838 15203397 731948870 177554077 385891425 739146273 15916466 747491833 84711570 918659852 360378898 815637437 789201511 814028479 640538497 425061336 991444742 446146798 954349291 67004938 388976463 608012964 141818855 74209892 678619407 268414521 112925667 62329395 344895686 378486859 325437081 889937389 691480178 272521225 562926568 507891711 991537609 940749103 267793125 22579079 657243527 255818702 831839495 168026175 855183137 202357710 878054353 275715048 438525078 676967814 823360160 766746791 241846275 26922428 397299867 770624500 273807250 13505651 300407013 912954851 995743953 35367128 381412312 289293438 124603010 131072541 404345441 161452854 967622172 326675925 918874760 2423433 135419851 668043092 679703843 16699551 833077623 603767795 533603093 85580868 274009469 934434228 522946244 757233777 971959122 14120851 370260235 70656881 756010134 41546259 693762704 725495522 328210746 547449215 294937640 834185717 257691621 193617842 372032212 449995472 343228293 273953733 80686492 749397061 901520370 464383387 305686453 929692190 465941941 398987446 311376602 754566690 337553025 568384629 192451863 611945876 429116492 898798790 666552421 739954250 267011997 517165281 196534038 951242587 145286605 732861729 486325862 351796553 25563488 34114577 33106203 511875424 609579821 47129563 595868440 481906976 984075571 383527562 971178469 674681191 246378734 630509559 538539936 602323740 629964593 262356540 745714171 658679268 470497804 777343301 934134728 274777500 681254034 862716757 789203775 110602723 656529652 626450861 472364517 648494270 500816324 239647490 371526617 675800561 368027028 155737904 470763469 180586026 755608380 570174681 903380854 296915344 232537083 126591543 298475239 734060666 786253777 994316366 496681579 584867689 611274693 188244349 948586897 270232398 346682814 194014313 738393268 889913591 549399184 965004509 617413854 768771094 149552217 150409017 419097558 439789342 483937294 377237216 95367948 664237666 738959392 192079940 151119125 607839696 483138873 393135864 147574198 376301933 928897084 428369070 620637368 139330966 965936344 960213014 575890428 678750875 348889264 863862504 662409581 207918388 187960015 646731734 516822120 903916189 176246275 655089092 608696164 915376021 419325689 919742374 419228042 579081090 278545853 30764324 641245302 508143055 436775013 105187660 376023185 153314806 77286447 3667272 805721180 861956911 382803728 599225339 349150617 135574871 805891232 446484697 398319635 144021231 498273637 599810904 554818119 96919607 956046466 10069638 461163698 46424069 163077843 179411544 857427748 243281447 757290377 968904976 361370938 707886294 603072809 988542619 488609271 824272944 194609722 869771160 174174949 900401553 507743866 833104691 248486054 35797938 9816321 316085861 417267884 18405067 493776334 727285903 155630225 920427510 463643439 344732550 143839803 999178433 698237067 186673257 517839833 660501660 934670027 296668789 964953374 357828664 691900020 38685479 123455991 314879834 685662704 791767953 801471243 829301984 750162280 238793364 336176854 593116735 876203486 674059488 252082867 760245283 790737331 625317443 826903862 722815330 215609895 921022680 867110867 988403911 962136833 149974368 260040331 501515628 945091731 979879601 247315609 529465084 461884654 331172701 671529360 921781152 667788337 169121342 873844822 89312177 720293910 718941549 246867389 140164708 427238157 111608133 4458970 849357961 189162241 439377026 669735441 445145776 407828618 649116804 506290491 132334353 70298119 873623743 442873454 762594571 689340396 636950383 979798129 206166190 618851714 737428923 456039835 166246679 889363101 747765302 194656707 826314038 614911930 679747462 260258300 435148000 67706044 863972406 727193985 483467912 500626437 286751019 944890671 310377750 234736900 875334359 78936424 47982899 298763964 364770366 148124953 862759800 856475741 931186637 911070107 163619878 429556703 731398344 923167024 354916829 186179757 291848611 697697003 305484348 535340599 805891358 788527465 80653196 216010081 460448724 288041099 379168917 754796886 558892315 655787650 441143016 757958049 874132607 450970387 427557431 980813135 240989231 619038207 990606828 503100199 722485913 752716262 312102619 721688007 644033438 754486366 238388886 3715367 746792763 996896515 510748315 89800669 366052492 630770336 532149274 594754947 911403022 391659217 290853714 768210103 341020241 780590651 874990269 208399662 944308997 851231232 542009017 104599943 576450662 885848181 377594176 415063411 997780440 54142945 851508030 682654889 635733823 868649611 347528 243779256 550082934 366237111 696633967 988923594 930716905 729924447 467737118 480471442 28513767 879926006 147343781 483022735 897459160 868968294 838802271 287976322 48243097 863111057 266945247 924933926 329887630 102932229 860918657 726095851 778117842 777279489 147302155 263777216 996497413 40217335 315859630 221395880 335348721 6283988 788842996 980248221 507354390 997295817 778622337 316067336 604681425 601336025 753437697 323280475 808723731 612657277 957271670 811928314 511154431 764317768 409178663 677892192 137892148 863939398 632556928 638902547 342021711 278626037 706946303 482697265 345493539 463842364 966348108 776735127 140181849 179472539 223913696 100634355 670681763 962881203 503536910 357541198 496497879 800266071 562225845 800849240 332186356 986367417 89530020 977909926 854111161 706778433 30188239 207673205 516720012 784439091 697358060 729047270 368602045 167760147 625644755 514266446 847060623 443619929 646964595 487259747 120089776 549774199 127852009 608046057 704193457 680642324 880119712 845400398 796855380 603986794 612924477 718068583 384041434 483127410 513260327 364884388 657440010 794531125 507111021 855393164 473786408 857970700 350485245 204659069 301372539 214506656 844885296 608874753 476790478 914049870 301281348 317402988 201735250 43398569 142280006 915045902 427571653 906820644 594618641 941780108 60580038 468939576 786775770 706161896 209484432 617357972 826316751 562437232 705026255 581592220 875375444 192932932 66808846 971718560 950004506 822303289 423319901 817923664 671306405 730776935 816960713 741207915 693991629 756516119 110785872 585207723 607949631 559994498 706616177 298460836 117953541 242007382 471181099 44371599 872091931 840999468 742372807 394716340 560410086 31513958 652713671 675147813 875664107 420106363 451298655 169353291 480696321 732381899 908123621 186147578 679900518 870349330 586140313 767966433 945819873 340855172 612580917 446342640 64761174 33647483 349758834 512571233 350258740 224087267 708718331 230789146 173968066 26447055 264528769 163144927 859525511 305506399 315201124 822976719 106082303 1371165 954564983 653991795 95857715 103500486 365624551 631199738 545761434 472910365 620424137 787532461 559928658 773284513 479418187 64845213 754949368 479675578 21020040 718057757 814418309 615222129 152139471 830037708 814479452 136881290 802855085 680973359 290595223 667487057 531839431 440406817 459996412 831374950 840649153 885497606 426660951 594732790 844029406 883891339 469769503 420788664 233039448 22466667 26236406 115292521 451544288 926838894 261467701 402653331 21954997 757721812 639353984 972071604 266118889 799327207 904990836 383458973 223403495 701325944 240438180 743516389 256973846 908377432 374711985 754565875 253426942 486911878 329655565 993975203 436411880 394602990 688827943 198010143 930416381 66823643 518167669 697357510 489234745 865032450 893642892 606204238 979283769 345469630 953128994 456115438 664146979 858405540 665002559 779654556 682546314 721316635 92744833 671413095 717788789 427284516 551276910 917724428 93687206 605730269 453147598 525438902 79660925 882290579 911067714 580547860 628823351 480095082 814838517 573961147 415570756 337544375 968447297 648860784 170247337 801627201 611295250 415255398 802662477 818716678 451613356 321430530 663703483 964630229 952892439 70567899 87969458 248425657 91038670 719378263 109376963 159741136 149695857 929100565 512784215 608592196 125217452 642844309 933893975 678173099 619902742 516578957 908673493 528075848 823751441 183269862 915740919 494572246 143589185 477568352 465322776 581188212 939482052 59279458 80454788 578755720 371814270 724331454 239655218 753286875 962975565 214011473 493136196 124125638 909535846 73691149 583919529 972537808 904577170 127618121 942691850 903108891 344363647 426575298 148487422 769548516 322557772 551032472 420944664 401068048 627128071 598736362 455391588 191255058 985521101 142781777 285304497 358048745 881160352 52991602 365615709 160198853 246765290 572271155 157899164 297232283 227501916 18151111 160093978 405230038 367237629 958616528 461973972 504834493 339273070 684105796 196787880 135738730 406125060 216157241 454665292 610618639 258786312 258449190 137580026 538978394 71173293 549145938 574979047 584045571 874641448 105327370 455010053 730122442 353137215 323707722 784784620 90353550 668003709 660554656 119688111 831880214 715391929 642152490 100801634 518005131 35545706 297775480 750974614 973722138 950272802 310353945 731973571 682583712 404006597 877344568 746285885 107131006 20644181 657287496 816753221 186513372 386575396 708661541 994044618 183595927 57226996 720817255 723475761 70177943 349397978 158437785 713648581 998016106 124980229 355665985 807945130 386765433 444494886 36098285 996158902 512448161 884994307 729948462 232605003 925908786 57544610 200812860 413603894 797789127 546714089 210595898 380684025 317740666 938853424 984180186 525014604 672838991 258344561 221447717 493550133 959385236 535473603 180356359 138283172 599649533 276251721 867942868 390449823 265766199 619515760 238729831 154714522 604034356 737469732 413493738 167691047 264277843 468779287 915779353 857307173 491765766 184199815 451946026 518623971 189786379 456678758 442336228 171698806 26981040 886723646 841103833 421133282 817550016 610433508 869082232 97558083 316661668 912991702 738657007 744496666 778992012 837090756 897562636 729357623 128699686 212410334 250034146 205164721 185270897 475885296 418546107 667609731 938579773 928533159 586254370 963631174 536073790 105199491 406154225 797746932 908300210 525368419 575630642 503895904 655837407 432414710 541448880 657469459 794234279 303921748 454591821 681405182 61621605 797672975 997390554 345089637 58969373 103051136 941787421 403046676 933616650 249518761 534907156 35498792 889739423 886410882 959669384 772063547 366769531 64341083 36678144 373838804 458461088 335751973 870788577 455880500 591595020 496937991 444623432 817623775 981706143 472601196 278458285 352066941 513987605 729191484 933818017 105831952 81081074 560915501 939427144 339644179 415213143 829070703 793441511 336527097 284188464 595378789 236053299 832112669 824790555 269154945 660772815 505227551 516514839 921137153 525551225 725717579 790347434 879894723 668909952 96082483 339765668 545100800 681912431 669884650 710719452 778729054 544211664 177608489 978942967 213913806 613032975 974567554 436318639 991219644 808521113 410515599 745217441 987449901 542581210 945085878 55260963 421861698 218356354 287393114 614620123 878279105 376011270 337908405 781217908 955675360 114235913 535566347 152133415 497666020 213567944 675550671 331999167 975463435 408650140 157911113 774497404 451606695 955107033 654457509 652978040 109544154 819246920 214823122 500996953 1922948 320379133 943945042 288420244 917395957 921039349 314456985 898938423 479233324 804737129 567540693 618473767 108236419 535571768 123600805 686415605 376384455 520283206 130203569 933286421 943738511 551055904 641207409 500352097 774064765 194010219 132573556 333890504 80326631 777200410 662191232 852502981 852900279 262958656 58306925 428901841 668902812 85327505 263523247 992813225 698193589 35731050 563462444 409734152 352673398 351958153 41138774 280824387 807423468 355903603 761971493 112312154 805668066 664774215 758051494 990240461 776628745 455681699 484616029 153567100 796248586 850450905 850048930 103433778 294453835 72502122 400964284 437017134 151006283 657095176 468917994 40088278 99602478 266475518 938193460 575220277 174880545 900411876 212846594 717884611 256780944 736529085 186300966 581940505 119391066 679823521 337115837 219334738 976633043 40851263 507491234 26194214 738811145 787064757 428216286 528933222 208579065 149002329 595444881 608691793 645389280 787890187 298716205 823833365 509633731 54046705 792303838 517213452 528267140 709474581 855856954 949568002 344956623 647013571 572679476 524435803 268799872 986652941 886802855 548832924 625746867 388224770 376986073 85681169 353910135 79935795 828368192 913417838 115417899 475339025 978354266 739932305 576178543 345978394 745511313 6267580 63783145 233172371 686251946 302252604 394606993 196081455 657656458 756280763 15575171 355633642 648244330 123780315 408921618 306270071 486743988 171252215 80273546 920370119 857866722 60965488 602941002 288823279 938745128 963978225 819271517 22604206 874249923 583828770 265480635 792017192 304133184 792914667 127846307 220790893 41231307 949827572 313436158 330909809 676458767 744574263 848226052 423136607 371381781 91690175 196719436 404046935 845335455 645115282 901041191 857154897 369462041 699881046 369030496 264250797 74446367 591482903 992052664 306067872 381533749 49775189 349411782 859236547 858013915 445772609 666859428 227860319 92422272 329153020 204573433 106700947 869206645 944489420 740157842 408603363 809277740 289983676 202231171 599964331 791211755 800468584 2234579 5181339 500760702 347056631 807352721 136246845 595773143 873685154 93104885 563910197 588068017 432129979 678812100 467490903 398692164 750937966 780116888 864022110 382800020 499056570 988120892 593730868 548401247 631997304 48371234 581031038 841542823 856847494 483513319 192253473 858137219 471373429 782217393 254157221 30126189 715849225 400212253 234203028 338275979 127439843 106670278 196198230 151419629 554526414 711683712 1020911 590087172 396634147 342846266 46197105 589163237 323569275 436495347 844756550 226802028 881870245 38480624 176194139 412726835 855301728 415810372 210900784 169674382 618935860 606408177 3484015 521108776 347629625 78347168 118751009 677509705 43239912 176481517 655956687 858964126 727917857 981054122 480452595 490110826 304248997 330267559 316204860 577206685 575242237 981261588 171371718 501512241 484098092 975068791 358896725 552155693 22054716 939284438 142343493 546164073 497063820 908523969 826167919 900624878 91401639 844973313 744604251 348010364 949775114 244939498 367399511 340100601 747003920 341131792 233975496 339184464 357423550 515555858 325402457 823373643 212839332 874681916 928396650 142593412 467616495 922469251 216699084 726177194 282634846 707459707 163775132 703110878 932192752 241566535 854979522 884233998 935756244 128430567 125435992 86195153 278232129 722270694 311218577 355777302 109568177 166164104 924911918 740796951 114821983 950165015 463783303 614234588 197888768 132632386 335335470 443837830 794794496 563355495 187730660 99177594 851849380 454987539 879574452 863975502 907377426 722631461 383659368 478949912 274258822 116041820 182249738 188049568 306408953 82387813 280214594 907627158 78397173 576236860 336067402 760546451 307699175 713898461 400605557 724032531 54224547 89390101 118650939 629659586 585154813 625133883 521999779 219365401 818486913 618925647 991626274 549210433 183544828 885469670 131919195 568888060 740805943 640838912 775371911 410017673 116737110 755787760 4494850 457843103 442242957 946478429 943370260 641540094 395401859 955434914 379296065 423979387 594177677 937733511 202678521 775411028 824608928 905762275 289090647 241936178 464331613 260344431 232036009 29908865 885940256 712898824 653955172 336243645 40649996 219169221 649571107 336760751 14024727 654574936 734127264 906873696 198307454 332782657 812443837 160327294 700229089 589516680 157038681 277054784 410544626 319905142 288188501 118153323 990580898 180197259 282454140 501747737 724724007 140247328 988053721 761016800 85556298 692222532 95766016 304202406 680445512 958224831 467054938 946878018 914778742 56249315 832336424 38890486 269525053 506437279 955314830 869969468 206841777 588628084 552320473 498182518 461747480 474282492 437309036 180006757 36582005 621391334 410222046 65903249 843384822 891805267 652310502 987338744 616022305 321038089 896938903 15809582 671083320 444467919 595668620 646809813 881466022 514426233 568673381 493127527 853532739 244400547 950449393 913256971 342556190 465658099 888554431 909542206 859125940 630822454 153645692 781030185 781069906 726258545 799739998 65400511 945452006 370609541 590257788 371596290 769293279 846049271 402997690 756222321 323609095 916688122 404696770 7200615 67809113 692968271 700593674 624054965 178184231 871683597 304555456 235242535 451470841 397755949 87119396 344945396 585203875 916734855 638024397 860994352 83219389 92221898 432568162 286935470 642142981 848051016 870039699 341414843 323419106 290616250 560496524 696486529 508660576 502347543 449135178 271531431 108401828 198408054 246726062 1170879 906190695 715305148 108321781 537911677 637537889 97087378 548643098 756081547 701384054 71738254 749650629 823995567 857898411 422152021 584270396 24434634 201119607 193540925 298038362 595875510 560237417 605867017 734110602 796876558 334755032 349927097 44988977 321628211 285800544 979780892 608311718 292426799 335812369 183577063 786750580 812471511 399873061 826125137 215122031 508761861 274910555 448803993 393857585 537791937 500887326 806037671 970499080 328273141 447149864 39505028 274380038 24763800 984729022 459269010 221875498 318314357 617678254 51894900 43817829 506951006 55706446 440470716 231728976 682121147 561962977 56761232 378423248 620032607 699943080 471606990 574983311 663394878 343287954 462076443 595373224 308151230 354692740 249950638 988939209 438996534 566648765 303029179 955067093 474100206 732936686 211771021 277923550 981434979 489754760 898644396 841664825 205763114 256201459 739096095 795754920 517591962 510980863 264552077 969682660 419330026 389855017 771376706 897273486 397533702 286602953 641566921 567426154 747725184 707000666 907252453 736667069 705463070 66863445 429589897 246148762 87971234 44599766 208580684 351296842 772318678 441066000 228509868 417142749 923104046 539770745 18729338 795106817 237838003 760040476 825138118 350188937 285992994 414035211 522067454 709399231 63658449 148949549 258298002 971782643 336248113 258567978 437747747 165917909 800687500 556793898 608577569 166172536 731493899 96613773 123148319 478644955 192134432 883326555 468608817 96484100 767349775 71810711 275764877 131576804 302888146 448280931 348548832 499144381 515596601 855306937 701071850 676632691 334939704 401999535 371686182 825304612 469380849 232345662 757268801 628640214 385624403 529467249 375604733 730646418 494448992 830429217 673225311 758221000 777006178 766417844 408529021 952471352 689314101 498179762 839164902 630918008 728527537 466774295 612508490 511613271 621388391 547798267 611863670 778700042 875060838 181504681 87371546 601907049 988029192 412344620 943083035 34924854 493230708 649889652 201350129 992218916 92748154 203857186 462653925 52392339 64419213 276158270 623148042 695042320 754366534 732547871 442030892 401074930 699498277 321103120 698657937 370376782 627523929 404511698 923392167 144133944 871474796 376472255 383035685 329363042 351421375 564383250 6315508 651478736 196153357 602778709 31269005 282773147 309449512 631316607 945915625 334425798 297647429 130449266 767337663 598469022 552073318 706332896 378908340 180747625 517581743 795114191 412796716 60711105 980034792 807828133 804930269 564563280 407995950 949620022 460166663 572713778 787586414 182028377 405392295 357745059 993167290 94463965 721018686 734741597 296673127 334642605 813755135 509097910 341713331 168242602 700620685 306296614 565994460 913866609 311639157 465698375 11073681 236022871 984081942 274512457 488430654 525286165 554523085 24547658 803756476 711114072 146613689 183758890 529600380 787798206 142050661 641587551 480590363 640715746 803121515 997881784 89353586 197385020 231212747 622123467 404893375 306168124 400911514 522326466 933122424 216979585 46421882 698307748 514661867 737075730 699829910 187658418 764334327 912359675 133206522 290702776 240495526 345764426 286824478 482958920 964279624 384020851 872796472 87353264 751009193 972526257 124194872 345287445 780560739 493853891 368606114 438658828 863328492 244386215 811036085 442469115 338705302 204567946 134487881 789315285 880900966 64503460 759232784 732796720 241446504 58931499 241446324 940964274 728948781 943839994 566841569 673341760 866123232 516959093 668762454 74023215 681688717 993392784 352298661 24696113 218294104 610420733 730625798 15988772 843134034 389070344 729297876 721226082 110659629 440097732 455563379 375944336 828642613 157519994 201848417 42130913 194199396 558942224 837943508 755575573 723146278 967658049 486548481 956093128 823323301 343001354 766589147 384783731 212506904 183189596 626511631 501774794 695414984 216435789 113290577 983073253 317267322 998615096 882571479 503715344 951648267 906982077 568702250 302372042 65931192 601029440 554948226 358406542 622651022 396531382 944398939 442204672 889369806 615799626 618130711 536916287 992214741 560767829 743654157 653652063 597378561 268436052 733155934 448588024 244667031 295634515 758448141 303119584 216463047 666565457 473278108 98303828 168374989 997983299 577176450 988095734 829699824 326610892 810110568 841942163 325454437 115483584 170931570 290031126 165228480 82046117 621176839 68253662 687590488 806144375 199441711 203515111 713434012 221354710 456652729 481958705 584374575 367806540 410275459 202731497 255119086 730391908 857115820 823261500 110909681 498376143 524227688 732059485 355658616 280787175 354611648 897421093 367348191 554459885 646817921 256709190 399003840 38246138 456942591 310154038 275006030 334063260 242631385 467139696 318688640 394445566 427188178 752813758 616327918 687421542 635664359 573921705 166171986 104562919 935303745 903477135 403257805 398588229 994555528 483241039 184549272 337156046 412064365 457734789 151669964 119020563 471328879 105127387 542379411 938360264 163511202 179758232 435838656 875904237 283847652 588641349 520429333 668918700 801026877 875632686 241376881 537806249 317626680 310064144 77004974 869098804 922221059 37254206 79153948 316557220 864577699 416664417 314338131 25662979 493534902 308044004 237381368 666861944 744548681 779614959 293120078 769577861 150404737 871442036 218750550 895337097 800183111 476563109 754715567 353340756 36962339 634827370 409884487 913649564 476570427 246398326 853056576 492934962 328990043 305637405 176139551 994477553 866384737 577113401 836556344 75589736 582831252 387046045 111366858 118723517 601990639 968697567 653164687 158656745 604765865 677571505 12696645 278616963 979430201 247002751 651895557 420445545 390702532 384166562 101266399 632959822 19719020 639024732 119320795 96191401 208267565 343272794 907895117 547066358 927491931 292894596 736599023 242363859 238186389 506615437 961035272 196428621 914328210 784955156 207448378 150432542 4161473 963572079 861921206 921601865 301804323 729834329 495679184 951838233 484728554 604137577 288641002 642633649 893421325 444592196 586472348 323002464 890938826 123460713 769083123 834818531 143812087 297734584 57916077 237858138 561903653 752646332 886506150 70916022 742440362 981438108 303273261 955506044 344272443 334046886 518085592 504472506 788323873 195405096 538058183 81769373 736515495 731555127 543418560 392741412 686654922 295855246 398537291 889683904 372185407 64333304 642594594 53708577 756845731 765972407 904319635 404962338 105209673 316818469 303697972 878686233 712012333 649316442 766071870 425945067 911314456 42170035 828393197 178222080 684614313 695423263 917667875 640050793 389235902 222987926 916658226 756354733 957509511 742578861 807215655 231158142 56371521 554787517 561337085 264611790 854126167 778924217 333333374 412111032 839603998 475746990 613897151 429340283 995984245 325281141 18861279 388068244 752755404 368444014 250392591 202000435 226978769 340873964 180843751 537541101 784067751 311996486 258559275 915146988 805828288 546269508 9002016 824263092 816392310 527538433 246479839 657523887 178527458 744580004 859597990 878305947 235029899 475728672 82966907 467070075 608306590 688863586 794775492 760554284 182720570 95628899 404511443 172723684 543104781 748242686 644063757 604025275 305414782 68903433 780832307 386493842 401302236 594817880 187299189 720212704 462120466 428100287 372642982 73715687 954273310 996036787 889668326 403683209 268769254 442591886 224640527 240172317 985872979 101276729 913802761 257803731 310779028 293858651 604313575 949209742 134623042 698252649 153365227 480248903 91381506 830706408 246821161 12856001 496828103 111640992 384767203 378445364 867206095 639707577 294908126 826670005 359687664 743617437 667088926 196614589 983968078 416228018 523916318 146225864 556455325 893632289 740279376 122969635 172870435 971623395 883661487 587464717 346222209 540173071 283129332 154755101 325227056 784428745 777192106 51730839 59689152 732574053 863056570 447355749 568753754 184529354 388076797 635073932 755101932 725121697 455772359 50398630 619988366 239723428 866651976 614797938 548796217 157510814 65398690 866234093 947071271 384566791 533916060 970139514 415847261 871789075 615084380 772438834 371500541 892169019 826943636 381900127 105781536 687038912 990192561 270174052 386118566 162885554 177345094 106427749 844622956 830499235 216273033 475516297 826415410 104169796 743144235 4073547 922467182 886027715 796385893 667989598 877855820 969311265 276290763 243408512 607468191 632750559 56541930 616866368 934501681 791574436 227346592 828848182 447314234 501328114 554650238 236735851 297610299 270389646 926198246 658706631 844667840 226284126 72512093 497560599 104637252 608937900 29721530 671849854 838974874 676417921 114828808 543189073 569697661 778997490 824057323 597327984 275231903 600961744 736834111 317546215 404989236 977640607 779993602 791258260 866694620 607480242 246067739 203173148 464961043 235983929 154576513 739108512 107395854 553075992 30603675 496983294 823195574 321309508 609836009 747337896 167465861 351222592 630179715 343742252 134546817 912168316 943629606 403897447 892428824 190457703 789440153 556109933 740063408 157024310 675273393 132041173 625810949 548255934 750717271 619048512 189047856 328798661 171519388 827339656 379809472 938369478 960397372 714815113 947923066 839660480 258278138 663486951 307597902 332521594 621928864 71711223 930952998 452961924 76081127 946569723 708925125 265453597 174029564 5107527 10037363 308958746 274776418 4416425 71004954 544696621 269423058 92263477 797659423 779681592 379894429 249507529 558296849 213688351 365194834 460498547 283446618 186601459 538783907 628744717 627191867 679050787 84588223 857466780 547354180 979839551 45933536 217873082 324070327 786497720 989827604 324527357 932448562 998272069 729977908 257887116 868862743 738243940 413131562 535073091 952703227 390855985 171739494 306636934 550984374 102351367 828440559 70209271 698982321 432489393 436810206 910165607 737710468 599509807 846644328 338950871 328720141 66532020 932529253 14605966 608170834 301418208 37887367 649012520 458807090 296810000 905994972 454534183 618191269 983281242 117677407 559942105 247048224 75631831 25050515 516792996 987059277 685173980 721111006 247133710 415457316 404156607 248923045 751823914 316908777 354971818 307075357 43965463 913802283 120707639 211814906 315128594 81007090 630369915 24352983 250021876 365044861 523074521 849285190 171964165 529279745 469265368 367410432 204370056 771075837 385787961 26104898 12893232 788045546 346341302 635894553 806700762 65671603 148100900 254773831 611620080 45625366 271352019 47094612 387461714 58898027 772861127 63909404 5636972 897166066 337853979 763131857 630501749 908579092 448738754 980687363 440522946 803348551 588474062 809420412 637385289 329558685 124017269 934876654 313547288 935135491 822563269 708486847 360504650 202459916 2443598 649711409 551784969 60059165 470023047 749760590 383678927 368693738 534916809 378583469 385528617 145731792 424234800 873862184 156871412 153652302 358923214 119200836 909936134 845373086 561124825 340758646 177266977 944586973 118482541 922347797 429673003 893252123 302428514 202557139 528417516 578682241 660922264 845708282 746813928 121765769 177507442 755276159 720880381 572983168 765455278 28346108 523014430 423756481 826545758 816856181 477571555 605783808 736488826 735688521 788245643 670869834 839467629 358893017 155239728 230716106 821780891 395983883 836967732 225638261 963239453 88199440 434791880 404511830 493446288 487536365 396900727 699956430 59466333 906517684 369684630 802834655 167201107 977304180 837854316 13446009 341152909 124040355 861348358 489317806 622303110 658101566 952888814 76830954 879908405 590218707 158037896 235805091 545897201 867835646 854918963 258546569 818762605 81987073 306976899 752995905 868352052 916502594 754750669 961750707 210749556 372857414 33564065 619287586 488114117 374869888 401855458 509925064 402631147 82884514 533819738 262763169 200902788 707166719 423225130 589585458 788042714 828541554 549090097 767768247 165174775 343221625 781159153 787038059 157351491 17899860 426244230 650326002 466990205 5761154 315725309 585956892 444558625 118856500 776421715 295119815 238104311 250177506 979522181 532369676 596015516 331108472 297535843 28278673 280033571 586408060 915585230 965940307 78602188 590164453 694919915 945937782 781411141 692290181 695074124 150050988 709526328 745800459 481765956 238811929 363175899 677555900 711209522 813777225 983834289 328900938 722559516 777020909 328865265 210846955 364429081 719764911 543082590 698222587 574013528 819310220 663837942 844308076 2174511 698264829 840218194 950836879 769279321 938315666 673323837 923025260 454474085 791248333 521474512 703867259 59492084 767887859 565882376 987304427 512109189 993451289 469180295 653355494 593855200 683282599 985826699 444496621 839663049 12100233 315491805 645538927 344561778 309763853 227470924 320975649 110597247 642365697 54202705 73244101 496162687 182690725 382157502 831351306 396164909 409776140 428301231 918065639 706651515 229556385 642269788 713665472 777101074 227025840 637815160 95752057 252121839 266143753 547968008 527260168 70697422 556406606 371831714 702986591 976434692 526707547 467551606 600268022 188599 58318542 123978156 320645265 511808843 495462755 222851619 731226145 903268216 58374811 694967632 544728019 842219457 116205297 977527118 823602864 375447289 906598134 364077921 102958322 376499887 712206319 128331319 988828674 480584171 14207090 880216197 935308125 253071292 112171807 574922181 833543776 755721641 483715499 356694460 577138457 808715322 877725137 19857046 195013325 140488609 546519332 242088821 788851185 592856705 366086872 25724616 901650579 723740713 916715703 622629565 280035461 869213983 143414902 123220988 102573521 985282929 807389170 994139132 646080977 590863475 89200578 640629037 906936204 841083842 159403131 827334215 916417952 383989961 114450960 820387191 988806520 961453767 183656444 594344994 167522325 19932991 38652181 349787525 899701980 896349210 510456869 918395993 477595911 743039398 195218026 173553916 613838906 733504418 994713045 349568405 456484121 430398443 154980416 58224994 225310743 713067023 217043429 943533219 515402918 551690887 734003382 922057975 186726760 125462450 235769696 543107489 596029476 379123716 42122822 975639827 509290305 383090972 941478250 812059110 610466020 811933671 53365283 576737850 214336332 417268467 708926512 526012517 278409381 765410360 746496009 533836088 352312072 36004125 520641407 331885844 594054296 440911078 611865509 940215555 793481493 649686844 314944250 947000635 702340430 199014112 549135531 808978566 617164807 690914798 466944532 475755039 531104258 476186636 125873060 191779156 528890238 313249120 349045302 468519778 129348199 84722072 617604848 797521712 847581935 8765322 891344258 751326239 493146417 419668729 120686693 346410730 899570219 190755410 929825041 249188089 984318386 593483171 316364564 928967567 271981768 496537625 228139524 249496161 812461797 791195152 260973552 819043595 401445715 846488712 703591948 986902671 17445208 274288317 832916599 102728535 304254929 483060576 554068249 27004391 733578614 632240889 169932286 177720138 940630305 940518369 105629908 227713633 589780673 255831102 694521357 358185768 245585088 822880576 497160825 445547764 70022230 533554257 361521958 981846805 449019777 978843048 42733659 65185437 865010921 238775559 339856402 768169533 32246098 615521846 359283100 822366810 518830231 868219048 309645758 15090078 237715308 963400299 600554151 598083974 617928698 176376423 427323646 360781953 399928302 10325456 805315948 457111508 139521729 4311103 956474794 211908422 813859381 358006739 134054083 453020244 508283882 647040396 21198528 205626370 327579664 284857423 565156230 60299929 332465282 690768764 67357835 275828642 806593452 857353137 2402615 173074852 827403644 679783363 371481109 890017234 521638842 74742785 120798992 709797628 276338539 266580092 369230864 299555311 524601954 447635042 16930776 143201536 74962434 712633061 630852969 474384309 103196288 829545981 982453775 796601788 696399064 755869568 270650754 715924966 991140949 158066489 686545722 621949718 364824749 854677251 435332127 663592599 871602121 140479739 43380005 39416090 656966832 823622853 691481056 230518494 90075957 897602637 952955184 408851171 205135115 38817384 791051200 448252831 689741649 901348434 894189320 543234252 83509137 354477823 331268819 33708118 39945256 800068988 517980842 292270061 131453231 472867272 285328597 923120212 223972851 545205854 923114956 389140449 8234186 278762208 126485529 517020177 457231902 197556736 843653927 104754744 856951815 594123635 926532413 14173579 263318999 680518348 716973127 479538720 431577564 535023914 82124704 612385124 941371766 813242725 580384181 15463834 733578861 131513917 894172209 260373651 431388322 179660463 71011099 27867870 165067810 810967171 497283198 439430771 954025232 422198925 631937607 275352897 400173456 779990696 320130859 131717959 8080153 895091836 27122447 632494791 233567408 610953729 752176533 692551103 561490356 665065314 992556654 849510512 465542987 324129761 951182841 217365982 889186000 216122565 280411410 463092569 688029607 164648721 607978733 826222348 995190116 619037068 59847853 757879566 360306098 116944175 16673499 651906872 677822749 505561339 612886791 53251862 454185628 741161767 448704958 363345188 44456777 110384593 704234429 731025310 20681937 556387147 481317517 430533992 497437126 171415039 355329631 280936627 785048055 121962806 47078600 865237706 387854755 166481011 403384364 246298749 492205019 653708830 129288325 98645449 909868026 901017142 222462194 576011518 171060307 390366044 476127041 449218053 248231128 978340677 871353105 168014597 142949914 701665119 429019168 117119815 812525586 891956134 57624478 430123047 31781487 986642958 356655182 23089472 323991279 833126270 537365525 668109921 264485975 825978609 241593193 365640052 2713412 315404852 76411418 928122130 255799751 520776508 52746146 905692574 659382330 779878925 684685757 262061498 999138077 739903477 224049535 26258920 482322521 97887154 354462901 232970366 795875294 174778840 182623354 4068222 68576140 858068468 117361894 922391046 245485547 465423070 824513505 604145628 362851935 979992632 123751205 972686224 704138949 802832335 899975247 345629573 499376122 746446624 413978846 523971063 688654791 268440706 928999145 352600012 690055899 635835228 841192121 863415954 218335043 541090210 574591100 127905183 179835808 159649676 838436465 195700762 724321770 249397114 186092863 775392571 484079945 906387862 960538992 561627911 137750404 648534136 517495080 197560077 865279460 599089741 58227560 41542304 295720945 946533850 166674309 433770894 297757249 643142516 320158870 804496146 249489802 52446350 879581778 952627137 54190933 305944676 848203560 957914842 870511813 300250313 52213749 834256498 50606044 627757646 281662752 271726160 502924644 31527335 728694181 900164262 616189997 160057583 331107318 91479228 241720501 812492151 18502394 166582759 356905373 413866010 966994656 798115889 957672146 301732467 113982391 115410885 921975133 386632669 264463220 922478402 422520241 157747969 616329124 881347993 539877158 957679418 390618921 158083969 524180529 587546203 612154405 331781992 705054525 454147233 971401677 550537180 768142957 554541880 998281275 380523950 309512208 498112984 680958310 927657241 737996194 331214335 213197381 458192969 505311997 502403090 286682558 298245356 966637391 926834804 154704148 740102318 354044427 584815919 974893090 508080345 883014111 382816717 986806715 599106357 388376580 140618186 751809907 134260409 611081858 982469644 861909437 892559783 372533255 537194430 286059451 266783654 151084754 16330638 724846911 244430634 302275927 630468063 730140983 372346497 936335502 850738587 170817506 718400277 860337196 314187293 421701824 212271889 38012049 657056884 678612533 130131817 439693560 209218930 306746705 651483960 476865257 807690946 211829104 818504607 14305128 409477871 301807463 420051350 295152608 157912711 484609944 662696321 946874803 213837122 461882583 593257228 448237619 673586969 977294584 584399928 96182870 175069057 586307542 800666739 492852192 876753027 237579558 534302716 747545807 333810559 227774831 729976878 897957687 169805390 547176110 608521788 434210655 454268399 805914231 617404413 858929321 372491061 348247623 985714067 582756901 797864494 681124583 622844255 194816638 838085223 385171940 479223929 728388372 190545117 746978632 526916016 33402730 825926107 232042563 787627323 659723677 145498816 132883678 187809554 198170311 133784436 33950006 955416103 767722747 450502066 384255201 957838594 252307549 591643049 363350339 800711004 37040992 250529517 281451505 248816613 305753880 499175881 409562544 557823114 266996692 920541761 767084217 201357352 909266167 860951011 896189308 103110726 291505836 397820647 764286768 474459488 490257162 299704329 366047145 481421092 937695293 574750985 876366174 100187315 459814757 153017827 378792672 261148981 351309842 654748112 20790636 673180558 273102613 883375635 514359939 806873830 136601418 838373464 961083406 294412890 40497907 777346592 906762651 899350001 206531543 864896657 189574178 113698778 80194051 750803343 203641034 181633572 401695262 713878847 757174659 450425680 666163329 120431327 962656089 426946888 31890044 252052077 803797083 675275392 93213265 977980472 341835959 471838110 373673252 644056940 677793741 451773157 524148264 652383596 139219448 777947692 549757632 293009195 729486511 142264360 360233048 618525594 647949620 489402220 281922197 948270102 66432340 354479744 143237468 292973431 641163183 497390547 633886540 547944234 71524569 359669979 932388700 191412411 639628386 828360724 143556303 469540942 803484430 882522940 515600863 382548411 766028732 224387648 922136255 699302019 757600480 241633372 435342470 768812765 940890061 228097818 45848422 705708998 934510877 100869508 84247898 927936938 179900534 452961165 163917598 802483872 749939300 915942431 446195100 806062122 815555677 485783246 122207711 176966969 47133466 873721003 963164675 974125631 228235911 803632118 334896080 994826289 297646128 329443602 231300964 359029758 455435689 491392847 727936358 223141524 775829225 35429023 244128697 683385175 215258714 387603581 231761355 496212729 53885616 133778978 79586439 792645566 564297881 139274547 290057781 453067231 334184730 152540628 508163994 974277367 183721075 937622649 441134806 476138778 763715362 639179192 967349331 201168134 660050557 100295873 809711753 243371134 179897853 280667185 132489957 283704120 807584773 646580735 861739969 531443314 169837581 435926753 104917586 507664664 757280052 983119553 288204352 501205585 851018660 522755955 243714642 202574254 429844029 973988194 186649632 385511754 264720565 383912761 199746831 549811556 522749491 393631480 677245515 970273919 738838114 864958049 718695666 344879068 634887855 984752169 252748777 827638869 681121247 294993433 903818265 896657768 986351790 451135206 62785844 89436395 385462211 87210424 106271062 313419077 210843350 661588472 31171914 464051401 413262944 595568995 525870607 447816282 31808205 560198535 161171697 484620532 930107470 679554052 211192078 219308143 398289744 729999040 201295727 935323563 822239786 958699831 920012103 615802216 44314691 333563062 147942426 558568109 745112527 488775505 728419970 396668961 217361509 52151026 72496708 383961449 547013434 570195758 371719499 232607716 537603544 14763741 46298555 382178625 971173861 793243834 142608190 90390731 10156777 966367069 60127301 828958625 798082854 204310456 572951432 477501403 415228615 968960167 566922223 898929136 171631033 635059056 27659535 199126 92046793 328291884 793425283 131480507 930605747 276722858 120545732 565496929 490711238 432768858 11346805 514846206 262824343 871585224 547713216 573275514 831005571 622834610 956669087 112932432 601650199 561256730 61957061 788886765 715377459 252852504 221209173 486698353 403572950 91590824 310999303 150772803 256188436 16715801 718539891 356950946 57237240 105073375 450864541 5686174 843342998 788963015 174874385 569520525 579156769 958868422 986290000 804389375 526332237 77244294 622021041 113667628 104793624 713440958 838116701 441280035 307633796 220697845 396112982 548250945 681804155 729694164 901120769 362273782 548609276 937681108 689723593 511807586 923877941 951812221 877351294 284052314 740442650 297423016 262118700 321726891 616557474 766091748 294598427 26207394 930539314 217350467 116033244 674564958 868713589 158529595 542445145 578676973 877760488 862609286 385485881 794390536 30256503 957686084 744517377 161679761 482656872 533422722 548181420 207429296 655830281 8444498 677433437 173603034 602752910 112600463 612383767 994841644 700709985 390635671 689036149 444747081 86557606 37947836 115405381 577354016 44810529 162308400 612115889 137669192 310728318 699218934 989494234 698520227 180009055 828736440 237977286 598591185 348280768 615650872 986212388 827312969 304664802 235586049 326729982 904355522 297816241 961585878 77310759 171972269 827380468 17024433 351636388 155985328 756055820 833431615 856683463 356818581 134323092 500074473 362023130 87329112 693189950 902829395 740215645 553970446 363809300 939951212 386442251 896307552 373756348 698627166 279273381 182415260 896014467 469989508 346012463 998586424 8240149 884591922 826391885 956046398 637624434 394467556 593899239 330492254 863544562 962360981 104523899 173277238 546402808 78154739 673911586 585766467 82874047 665860963 515718929 261902668 301630679 253215650 891734256 843117654 127746118 349961297 182323848 107960589 712726004 986152683 478657742 541473956 325469764 593096698 193519970 755142457 263593897 896941762 838975068 159199073 54534588 948633809 568054525 774424963 513254545 257208921 748411263 397579434 850495050 713314681 109768603 268578995 850392915 532571446 167886392 440407334 854040258 500470486 260366539 849332408 627261085 636842830 439943124 456850836 548705064 595467699 167248973 80227241 657106563 635155384 25137848 975705667 678813916 414855456 982134979 584851864 301454240 311885045 969073186 339702602 633042938 494286486 436473921 851218756 735647312 498233452 158850629 714477492 665281771 658795359 233065939 233188621 84152840 529945206 63093641 710893375 182298970 430058698 809709150 122094019 295460833 255173662 743697422 954007848 130941009 384434797 947771297 213246960 438935213 657585376 524633210 875426006 953268008 938264418 951418126 80649271 320226723 353307186 681780793 84723434 242951332 449146855 289220929 732770893 68607537 986359405 429580456 926346213 689068355 816220586 263217327 923777489 917257692 559681276 290483845 328433460 818681291 309828775 14442788 242446009 714113199 909431702 141945743 697534409 52337160 349200730 409696237 945958512 916430031 724521069 22517106 425317792 995813375 833988615 424629724 295878655 81935913 936831584 888972612 651193922 764290294 696473271 994886970 87879470 282026745 951476215 434262055 730967279 517213986 549709682 427621889 564626901 502618465 938084252 607418152 396793763 39856215 629119921 744582995 860031978 82106442 414595777 110470835 999079627 650095938 460417768 578497228 16727276 133573533 422131436 906398916 772084317 493114516 894330801 391528600 169797658 609637515 425556006 908408856 106138010 675400006 555158244 991408948 595731222 742178274 374546548 130622194 381414166 804227574 527744933 625919071 506451591 513219787 197970823 383948201 146226984 877229314 604648712 306187565 35533167 224624425 415314220 974763776 90966045 901703785 588297353 573993210 726732170 267317418 195434334 766828948 47777844 80652079 381715858 672211732 33953358 945987650 427107384 83814012 373235208 715467461 271128297 929778134 99246072 342349202 388120736 679294680 620240724 102826096 166309986 603535421 641756651 504614242 217049924 843136194 374542096 805510856 998097898 962504650 683774471 745605250 828590448 880623220 885429084 775662677 206524598 256179464 474619744 49047143 528268759 956852687 158783744 315124927 897571486 73099422 446799981 750864934 216067749 613940726 848201852 31609782 718575616 509159476 439329193 774861450 943267381 594076007 956738558 853938735 362237661 100081381 15044738 990252199 748565909 905932186 19161690 550670204 329832621 581491353 440451754 158926653 727865268 50993175 671098110 797011292 44068981 145360608 285599945 176105702 407021102 174859223 982359476 81535385 308299615 910531970 498986332 738729794 620995155 969400742 733700907 193065576 241258065 315871795 492409633 51138770 422307006 588211222 108411662 541456165 65197294 582063744 893059946 490425119 585390453 524228087 266603047 109127887 978690425 922178962 888373091 800395101 87287096 522324498 685418079 454683408 230128170 589990051 863715730 59248411 605253809 824778089 666729733 731993586 553061729 184400860 638648454 501987576 414724437 279798987 652095255 823650541 133220796 332889024 197582786 608605894 850910954 927587768 895990748 447323772 455094881 880576722 745827452 907052115 952267716 308631788 192376281 922051296 910027371 574857575 71537095 454591374 835375288 863489150 115311961 694537871 152853702 546293771 631598458 867890629 414957652 97961619 345848640 577746902 372782335 120193762 785197217 472636535 545901075 558442916 95289073 301450923 821643016 128833738 323870844 550666160 154605054 945541593 822156992 443414117 713608532 407760607 894072316 629869667 844441304 85364803 225917395 423308488 919726692 466488632 482697062 412910679 862385516 28478737 485587334 246788440 605209631 156947727 44613589 476074210 201036415 978421066 25001455 431378733 448342657 906905089 114441627 317464885 981893492 957233880 149180244 514495374 889186633 31791098 840052209 972949014 583635946 364040584 942504073 818137979 483700848 702301855 900145130 482420180 236703943 388692745 638208524 163406133 367000030 592694451 689437797 576645347 222214207 735556157 744199857 327903328 809867420 223667515 642085586 89974118 582077051 840516492 529747423 710629573 916401532 399812696 47469335 423446313 197884504 42395375 16735250 812865948 135497823 397055477 212109540 88652947 775102901 335114899 516517851 918548760 728544534 685652570 719483943 175091858 688489888 584936003 300096886 196056446 886807123 882299511 685473584 115458864 973325991 633458784 620162575 626135225 444495565 865586689 501291255 252071321 196325804 354522421 920180469 711182340 946669826 320799673 743054002 629453685 48695465 919823737 945482079 207086782 43808074 538423561 229924653 176052798 760659031 677538536 190390476 650657104 142315066 515886445 748277644 352349266 992836089 183559696 134579757 115016055 13673776 662515990 184995882 60484759 626325320 741052285 706575511 245098843 86576452 614639798 271327340 901778623 380458510 728381644 365202719 79788383 857619255 675769802 16352264 479832532 825389830 382497096 68617848 439632050 647202882 782416575 802439524 216878039 666776879 953313382 606945999 264834592 35110907 463276383 909029631 909989041 591584380 8043883 311406083 481658270 781001471 50063295 33477033 136190939 342245959 435766934 724463502 11643276 743147807 549934336 446193741 16976692 45511633 370998613 436293584 266422387 598916609 667334955 940373025 178905409 589831971 71174282 402485953 188850163 309420824 815077945 370436788 510665078 139666426 866892863 357951540 428197592 970691549 475866637 953119195 459632353 440480911 716999852 432019782 878083592 362447427 925400397 202296685 875270146 784072523 150248872 868867446 998510501 959641840 774790854 402425131 780412173 503981014 543299316 278466956 481328325 962145131 927166314 508251733 246032944 244827688 508594271 882744553 841130157 575167930 756523758 468588784 563270710 865320689 335676344 325866175 994517838 822608027 377525639 795833617 305639584 22408165 982208060 236564483 624928216 708699466 67945773 624835720 817891176 989756671 987458140 878709476 544986666 718882096 851543701 673792355 525289582 509422288 276028672 170195743 653567778 59353540 20520883 867896336 857993599 818047466 861152840 866916031 392263845 398732274 41299581 482369250 843272382 884808928 995512829 708929668 348100363 754486601 967643992 243712252 42418597 393852849 121956445 688634143 755634961 268467660 428529991 236102350 825424772 78162502 126631428 479348146 610855095 218398506 510579079 481233540 494457953 545922056 341730284 437120196 179701148 226811464 748721558 461743725 395579480 337426585 401630000 496978607 107576558 520871754 197744838 335999902 490121094 213058831 688780330 871538383 901558877 87594182 622013845 396962458 876121515 706596391 572229859 549830220 95565536 887063654 393641141 216992843 456933735 488949009 336726381 712676789 499531536 930304053 13699021 760182192 327707689 544231680 238535778 230491853 414477956 709529532 483557274 306493551 910171078 721743605 481484350 539685621 594565749 164805006 173469571 426704873 904494303 988644771 331608712 844713179 545200781 733232565 874491859 254667861 51563609 855479643 491505652 729988788 636217633 802722282 915421054 154862198 379821785 604471616 844089797 101551066 932197549 749731763 361039280 643567988 124450490 90923057 538867114 253300606 397980747 830112623 5318692 637730742 562635103 716532417 462032230 7373311 326756295 355851681 15698229 466690123 70480785 442758503 17525463 323755429 786622785 576068088 309464154 281820088 290766457 451909055 484049314 813491969 942687652 913145419 335656124 791751064 935575074 880157299 282105467 88924975 964780249 258111429 378876314 12296031 421924443 765283527 365491646 961477250 740221005 353481903 213246133 245489922 478473965 880072644 272962131 598530094 570936728 390756955 632282764 567532173 136923333 957349643 683934568 464378993 4402655 775321181 13749783 816848052 832681412 506516477 234510765 934429038 786348593 668842617 211574646 690741483 717501370 42736999 600524964 3273324 799613296 285959433 532583983 969734561 167995996 909298468 318639993 475002078 550789932 960991109 728930974 50731887 227644165 864598405 269455301 535046917 776387276 259503819 330988738 827897933 183777046 249947712 850981937 113357230 210356827 621467918 642239837 489144582 934678917 813304581 715742956 967925776 624827223 193067778 966340404 75060701 911013690 492372531 705235977 265977881 548338414 788021208 135190692 886879770 393534841 314001834 801796722 256637824 934177412 59481077 424436321 499098667 660343952 204124186 904545706 817550645 60533646 444959500 500705438 130347147 209252321 412884523 369020139 882131066 877663486 115381676 861003363 466227324 753322542 204219798 741592471 917263210 64181812 108009883 262552156 92601619 742732674 966855417 809411023 336255473 634458496 453118707 166064492 555041589 618995138 45459359 925361320 586125895 546049041 619078729 307248388 16038550 55540371 296599556 169036292 604072351 355581826 362851494 850493101 171355346 889947761 716484470 268060174 484254507 661530456 58722715 263522997 18302239 732250075 249793594 340277393 952299208 426941204 58697693 737766532 105314878 347011115 90549400 168713357 634105027 423433842 579768916 242034281 242989283 88320567 279982196 270454500 889351986 801046418 446971908 987627312 931073251 37373518 802926934 404691482 238017062 691928471 967278561 746488871 378969783 727843250 119979479 386077541 97473884 256206131 554574120 143448791 358160320 606303884 713808983 703349863 245021775 906354334 966347964 172795861 862060813 28591146 759186224 342063988 486757805 599210316 15893465 51215415 978494733 171417645 464427171 963747063 205798973 664779066 872838401 442885407 378217967 925168658 816344537 936273795 511942272 775764439 465419576 269622504 935453194 820987742 539426878 38648733 642842422 93540129 294684969 852512989 737323577 539434007 856756594 263069860 675293087 759118938 387882705 694633108 398107285 660311692 298455472 887448336 601290643 835103987 374770820 428690152 197670597 920762481 344188561 330429667 487912059 313725752 183873905 792700228 504277747 159174990 500751817 148171163 515522102 113101554 859047320 491114911 705782610 845987268 572159713 11144860 236867421 620066965 727490696 563825796 846997400 420391749 19252167 570042394 473566783 297565047 136567332 891111342 344507871 311989355 670247886 350728778 313232723 829657747 171865493 209909738 65657708 693254302 736798377 562134563 775881435 949174202 278128470 21081194 834221938 324650224 334128190 530429307 521292940 125218678 2925352 225835526 389765372 222672795 78600083 441380175 111645258 674523845 982662556 341834778 474760466 863309515 442992349 95818492 610927026 881716221 231037349 337659310 482740881 309169063 681819371 175819247 83583377 280090781 294443890 357530449 990780939 593653991 411503835 574673920 122671109 89669079 951145296 179187766 339379879 947603833 310468461 217378085 32367910 515112321 387730371 891363357 430793724 837758362 840438422 752066460 318275602 940556495 545690162 118248538 371149862 446044698 185801490 871904119 803238012 111138961 642219906 12408216 319855461 966505912 107754661 486246868 240604984 939045464 727983531 219741081 589779316 182287210 581957121 774242890 829823522 719951893 420767731 600829321 480782581 769108167 955542236 869809008 810334566 888074410 602707711 804308238 907100892 50123694 763750949 62757435 136570149 359820011 171647557 328459252 519552752 725319498 590361029 662908442 457869939 334701740 113140756 389354387 124485564 992879088 649878805 720011221 603987951 632613335 184979565 529884529 168334898 379447060 915319123 844893297 665089558 112498649 391733462 686079953 170350940 431144417 916313400 729655781 694985096 439143616 709433668 243752767 42711800 515767843 350831761 591775355 781992522 801409654 744168474 504906503 5991663 746124878 204234106 806066915 499403647 536835895 193367688 557435850 473832681 199582290 95166587 93366723 315702211 508603449 510977430 462919714 937508087 878153031 646292753 123560499 842338316 739939443 369393402 611876057 910296418 23070813 170329449 295423795 64016617 240466138 649476956 451236586 362509502 455278557 544066185 21240062 323324648 941936201 246306355 893014207 97691319 628978167 48834330 78405314 702007828 597741337 641849492 817986411 229554893 398374744 632479923 874080896 251874866 800829087 999588921 604537686 608753969 604884550 39713400 761750633 270639649 702792013 93732787 774962883 37655908 222539098 374520044 926432978 156757409 435457131 148529988 290421048 152092254 668147765 288636823 178501032 748593070 497253198 657357562 388610556 360362708 419517533 685122785 81411698 182096567 414984250 227813704 458592419 160569121 19153490 268760681 501467268 507610112 209638773 778540847 588807084 127466260 271366022 732437509 185072370 427794067 418121288 215699624 485193585 412608347 667664411 210862285 110971411 774028995 626733202 372721672 89940497 828283298 316659160 575583730 913796835 936414498 233966933 543374984 509219139 75802268 13792597 180185402 260007786 743011985 626863201 371853420 167183313 395732998 684189467 59896581 138671639 366241776 819978567 139478374 11570093 670066446 137077279 306205752 626989368 146074753 202523736 596756928 215580106 682565866 444318026 272223619 576485048 127453409 452254242 993686872 706940530 817708216 282314552 189860603 566135446 968570283 581540633 935493041 594042884 821241186 182346908 252143238 784108468 469608806 177089850 290915203 287490647 449556481 761947605 344182321 483349997 125327661 430899568 77951064 477249123 558545364 854217203 645142830 428269694 570691581 144049500 295090654 395712347 583567810 119253060 625590852 840558361 594018413 224321020 658062623 336194065 926856209 741600742 369113391 754865282 175339222 9665735 898001089 773765546 138060406 243626311 918751956 627565157 592930990 341717519 781355755 612563699 336275472 353635532 148455928 778423196 924769170 450456616 865309359 649516084 844035641 180621711 438698672 817954461 103727382 348673356 855860594 514094030 164854787 898659217 829884978 661968638 820613651 645947268 889847145 584243425 95136058 252791124 941857905 156536974 33714894 814951966 107966627 419757561 215473467 568952112 6356520 782914581 716350899 524459718 556689933 745102719 213279737 175404270 98618633 745905616 948386555 916802980 686079096 687789587 321333807 88706498 142367347 811317687 119488797 713767768 373942886 616298612 393525459 322386041 901668984 599382880 517095435 51994400 387741613 395733649 96890748 155800486 607133181 524728801 30663939 292353275 595579164 206601578 271419584 615861575 739879812 886157632 944190651 970573667 788756929 378358371 645126453 567558826 379705188 358812914 504536644 449441878 858024955 919398926 395650206 781129409 588240157 856469141 974239791 614340486 883517549 539990491 56904236 510145168 89319692 60695640 155200700 635249643 112738694 910194469 138856696 570412199 452232634 317844760 828172381 952421845 844980508 558591212 453351418 60617914 897052256 982312937 907411325 825185506 625121513 389364510 874054274 63928532 923266239 806902500 499566969 316612327 926652096 687991997 553136637 927265976 229729650 605900182 472801 946966118 315232976 493037922 486592497 485808234 852463248 447835264 712125782 90304174 936484714 462993745 859799678 361533706 345588028 347360554 925624774 146078355 62821305 806222041 278566931 475474931 663577154 978300633 522836789 739495403 973786921 639961417 502554051 619581464 418484472 488838131 64432818 925187595 910524320 435197779 670301205 56023487 562120054 770511573 63148012 818264278 134357862 759734989 255650291 264828914 380783892 75210567 262447051 655311433 453065642 86926435 18469997 111108370 384262342 428807900 520597206 37766578 630395515 34229101 761453324 791373906 936532871 63982626 48394722 697759432 112332789 177126269 219708473 445884405 585972211 388051040 291771028 895423525 441318508 588232061 927483532 112086668 133796604 166403628 530848311 492648234 427586540 291125448 106538134 435352672 39982433 815555 809849799 841750909 202352917 42706735 454209455 204463598 849757158 141084382 454322831 814890813 78864313 776639554 759186335 362184783 853762348 233962049 913862266 672104083 453040710 972462711 73826409 841241633 274871325 820434776 110771171 749588990 124443209 92055123 243515371 334426924 15626849 171723356 819853577 624501996 258894602 910859836 767113440 898835033 952666277 981754986 759190097 153702045 531402055 391294604 552059518 952174646 998543626 990148602 921657538 604817957 308966147 204084007 714135802 822868391 518287083 668892336 596733062 390988040 184293904 642927540 620734823 488959956 731276790 257986438 12639422 639384576 992567293 54723519 379989528 643462390 498148143 512159217 871877137 955472039 65879494 482542461 702593642 467698784 205138809 530370265 189514186 73572164 89079227 138798686 671271812 440766181 700751120 264286543 208965747 53307922 513366403 959853628 747500469 399123431 539876072 510150296 568080793 183525699 834073204 418932036 39547580 658560341 940817435 595666586 718724641 391687009 657050483 503449739 562537723 532582680 519919161 764181100 2386162 446610013 396860815 880863116 144820354 107322575 100539615 454332635 216592279 175244952 208928749 703817785 55476368 403314296 54803095 931112485 820149651 58947425 924648239 905648862 256128906 363315714 172895589 163988272 437854753 947844587 13975178 345606037 296053647 472814262 925608232 562096822 400427116 899006635 765377808 204589846 484531394 861942227 945460320 415880238 972062507 974828589 848361259 356024904 282931176 382958849 431975923 419228071 881656607 975659208 860152404 593824368 183761707 203287577 678713581 576467075 672206337 864132710 458473781 938300985 734449958 227680200 754585456 982752279 76272392 230499256 293026952 618102509 619916418 445024255 674635972 660832121 415509822 437671858 520532488 40858457 529552264 26880900 563040606 280077375 178112028 815047865 233358406 769643270 32636257 989095500 387964258 335685209 578732143 702805054 458121595 865224752 322485074 486333372 869244119 761214765 623517006 640572392 854494341 903112076 500579835 569966705 514899611 676373 548773351 410913142 497625941 169453520 161981376 525151674 428026245 399618844 415561915 447925298 866463551 5957261 7976185 992183433 423400621 532745512 774989215 207101064 335785476 429758615 32788709 906280201 521924293 559992894 319953835 137403752 954583537 354745682 86194405 994415296 420274108 680075795 139659383 153022113 479255583 936819468 134374142 569029471 503539929 541409161 145159391 439275409 289528398 659159919 99727374 972787041 267783294 314781351 817932491 870762235 37345839 384294583 557890307 461468972 809938189 970716613 805076098 766664845 431252400 174610695 198850843 859781404 142100441 987758560 913936109 35760952 256565583 445773103 141715331 331202175 234497571 897155721 21357519 283583185 213090072 629435726 414972204 428654887 473942574 757572085 114075656 297853276 656044865 403748953 777706753 468826469 151438092 858849319 907065464 371424637 826577284 140504982 269001471 563613448 396852449 452990146 693027606 116641767 497529462 698732137 137830761 253559551 728905370 363524003 416639817 893215374 272738730 592684291 259456939 937943551 468799669 248841574 801210764 360848212 870249269 34118847 114457638 717517001 219192112 275809787 628009278 672533906 315152743 861323068 606628180 185191007 804824319 227752746 822617820 705045262 981604223 779395733 490432182 318500054 54128525 729027580 996895730 399613950 643321558 568562194 507892445 41689661 836690379 973914118 637193759 236885692 784937397 695566435 562080149 782378967 568560473 626862545 862488857 427389408 988013766 238398842 253935389 794906124 606934833 281180317 112809851 521935683 510851406 106404785 34329115 799321750 507139223 577550385 154720923 50721037 984034194 568371048 642243814 230031192 352872217 450987712 532026075 837979950 869809243 722093262 26666686 305692843 89006672 584770074 199297501 156494247 46890235 425071895 786484130 890384334 279384519 804770033 497501445 532248727 705780039 440392586 706271900 68115991 448893618 256901790 464699616 838950952 728141020 250455141 472024647 546048559 940024263 209494407 960786648 748969885 873732083 696481301 880236476 190480244 620873057 648812919 37119542 434780674 551894459 809267537 829783534 106820993 81299146 396851601 521049723 922409010 209744195 837316300 59264337 282587452 49451634 491034205 961182641 608120402 762194652 242805363 368680576 858617646 987669309 746631579 184058189 758902581 582587275 605273654 128875826 30377744 450061988 317544487 70420857 597389249 509440460 333372064 327776978 539959972 555057001 71304840 634736438 956992864 753691086 333862314 74424543 851878660 800687951 532388877 494175968 353455125 13818292 443034682 376946025 743268798 618166938 306511793 150279058 542179508 226133697 887858835 905273736 776560357 231858255 606885951 293644515 606234346 293707867 328821168 892806688 226514526 703996860 408637225 750041102 681967188 677684883 78576378 440069121 627843908 580538354 850185713 425929122 170012694 786060636 650127417 400257669 737768268 804825345 835505239 359343437 178757954 30503132 487436234 970392036 861211742 830452973 997538630 537771389 660820646 290170047 424929840 899609471 656980658 710681012 7683435 201171042 184387206 88305911 960348073 97276332 13045093 526425525 65788073 877059706 938400710 393263849 536429534 55281999 171084166 918527719 81615356 113605560 36662088 370976569 337219061 668904274 160511603 731267018 506452244 140130778 283528938 864476947 376932495 489037685 470609552 944663967 823321350 370869940 647366444 422752452 146552911 809618746 778102523 581562611 699973561 424653021 283843963 388887536 930126039 332711152 469656361 129942360 205522586 510001706 95500170 761958984 692826669 826353166 138335402 576538412 84814400 369284761 129146530 147418048 194610360 57501643 285393500 34128560 515455302 378602118 880613854 571480800 560901547 57291429 674212165 765547985 698008623 94401188 563701942 785922482 130679887 817109372 158309818 304924825 61529407 327984745 559850585 920249748 745097968 576074577 870618918 354279353 215952839 245624010 889813609 55349605 680126154 470568537 819982107 459443092 44633424 968320340 716352817 131817811 934523635 661100076 693819906 119675214 754383183 527358945 345118407 632154378 466230395 514303346 699478670 388685924 211591499 151442433 670526934 825000655 195618455 144802708 891092601 611072172 903608937 172799314 271214315 507480710 48813609 167946416 63608192 165261904 520366616 848289887 290654980 127608249 734382199 331219856 490852314 212171695 191262969 702273746 965305060 443121192 511087147 455286440 902612755 456540930 963349826 518272067 292163672 740215259 271296645 535134411 237942958 142698781 517743440 713473346 517925854 965062553 97239736 652379136 346311455 771162095 495088707 892343505 968286613 59725519 510113013 399733783 523648803 915141875 609006814 883761001 301903790 510716414 378816666 565103627 669518662 622376523 828996855 526884012 178179835 371291254 70681536 953592943 982026929 787761912 373979873 395257707 576616520 588078818 62179881 241258092 380423705 917578125 523426669 119973430 298844025 496271671 72045467 165259610 697989463 925961389 406572052 846301353 244222348 350529479 238871440 299764630 711881838 241275608 604102127 916359568 281151095 842675643 744270614 786939328 699020061 671048071 640552338 853912784 660430229 270806004 801608269 99196682 28445987 621717851 893597289 769086666 797512099 544341796 985473828 20361568 153613827 115861943 188355578 411842022 648176635 457048043 524698110 416347667 39066435 267826935 434095483 359470404 742592681 993700288 458515091 252478512 506241949 580121273 117672843 883839584 204995611 436574217 713596777 638754772 36002389 829701453 873308399 48762251 175158849 943780090 461469408 255672023 79902913 9267855 879882453 686675204 70715415 506957384 596235988 990715529 832032313 157938391 588196812 693893800 350839816 986906739 993255431 526006244 693882467 404358773 51986029 122067904 380023278 635757909 394573878 340897982 236779759 772895641 675118511 231391215 323569393 692993035 686004639 611139417 893884507 880698183 218513031 679145997 9790585 338825117 944822573 127113102 194096839 652062456 513071870 629893608 193245771 446273986 53251687 672803824 502239048 511739419 188333996 307437941 296388590 807103553 961189033 580987380 373724572 486278476 700864099 184635911 507384592 565610544 393051011 600064773 97338134 778784304 141884446 748615412 708559731 828308486 581466554 487297111 463371486 959539653 753655735 60786099 982306111 837305386 857615515 745825630 500357330 120756068 401234004 783151515 984615548 453005542 939229468 911152306 99617005 410628934 28460802 972081950 373162114 757679758 510103155 794824132 161687916 880772721 598024023 52981784 333008050 646355483 259558683 926217936 336869026 844918296 951689001 122405532 157598645 827726779 351297612 189186045 124825383 267791993 723829327 745295229 404334056 769518604 357199677 565956135 502164480 657079448 369344335 119984751 417325574 977097270 441673160 710499337 643829044 660049621 551770791 331648936 541768346 35689965 626561562 735536490 190136773 394824656 967691067 452188276 675670024 343671418 701089202 215709136 143522798 168556401 960813070 57598572 857050515 301108100 859393521 190531803 52322577 470834517 127640845 639613176 145828752 652971963 434988309 55348878 544630734 409784280 17552378 264583280 872912230 159732741 254026461 569304738 121617374 37259846 483035221 229228176 362593649 207778579 588002436 871652825 80617785 700590959 209703909 137209639 988264690 38078024 385791563 241423484 421142628 623738458 295450173 287612070 21517003 266528652 65630777 81105134 538244481 44446356 183790780 339260594 61188194 465588746 387073529 769894398 232876900 276826262 312599737 657707924 136385659 696392913 69777358 513949659 343023591 336878859 281290535 627459051 512340344 697505394 616414116 770246386 679998888 72331370 224776477 619587303 941867063 63896549 504820409 742315778 493325255 141270633 854323121 62843212 569207295 740878992 352053450 939671976 71214133 750016193 218782749 514206192 844858989 7951757 946672932 384957445 65094195 214906135 872070771 233272389 544415364 480798161 384618065 286639241 4462577 41048854 792191102 309128723 523279425 194543232 622192432 705415813 322500631 195365840 719165466 686518536 517665346 750866501 857555572 819011982 85705833 291343730 59899652 216996351 600218126 224392296 390511240 282903739 104230204 809399296 943379800 836419234 798978520 723058376 3036769 933552344 791287734 904947819 870742581 244937402 350881005 763679813 985236624 35823334 361702523 465363333 758796043 410408813 722438279 662686536 642612981 751306313 637825600 254431549 270139010 182754502 925480207 630081143 689937531 824496568 523560889 728923211 42686848 798539438 666416653 128464186 90059664 802746798 883007590 55902029 159650517 77201762 819338771 361612475 145858387 523673912 338384997 389598325 619387672 229593664 140468793 555062688 697468589 925335958 961894115 661856595 833270913 340706363 106065968 53676487 16529374 484219260 955598748 444679252 576928407 806853218 429053393 48158462 348856801 235515313 112179213 264820606 654130066 66558713 582914973 662399966 207682778 553901150 671279293 132223104 605226690 185983569 995619609 121830714 988075979 513799338 230014546 497574867 675952675 563561152 108814911 977829439 173823926 222444083 485735900 125820691 520948213 546683174 678852038 940300434 892537245 352829580 917296992 413344537 588252487 15664783 517793229 412280106 154953233 100194976 207051127 831903306 273054979 166184628 363810999 865006961 78045117 853225901 946242192 982116549 920379591 959629282 647040483 80819143 865703415 97766674 429267940 486888265 457700455 895711043 245865352 877215878 395775334 881257110 668069515 142928901 228080989 831731899 993693826 203731095 502972278 802159545 524791148 768212501 529468570 487598453 276779756 764898663 527632207 432026282 129027823 727726533 651593121 437231418 114398846 600852697 639265534 485258380 930521028 835599908 692816585 444176700 187836570 608092667 439539423 305991170 85274072 15641767 823868086 986927650 423328026 95516454 556462830 182420085 105608297 875294403 537924009 202557475 379143771 745886724 527065933 906564137 617391011 474978351 138269306 473114789 325373519 523844804 498480625 359410099 45211824 878619254 12108357 254568153 661597228 91881902 85511172 344310279 759214016 440955406 734298122 672901424 848464726 170284393 430769001 432329527 451749835 161075590 583855938 178514526 200911891 961819991 81238338 919026698 920365712 219728524 893239199 830304141 451559240 247946234 261092947 515131996 538392050 524582365 445293373 893596745 303297731 63742764 880223938 809676251 811589731 245186402 966345262 793824876 966732535 494636998 874645573 954803454 421223943 372836221 466670842 429306738 313692742 611110702 345686773 988565708 418027162 718339673 960813226 565158148 163034593 547113816 881462318 157919087 592201960 917387452 52066277 559044546 44418561 463723571 844201955 3702018 379478626 227974278 352356444 263667284 636837097 707342231 681468630 258857478 585742072 9542669 270775098 39394674 54190194 553582367 373187318 632587338 370914828 663603602 980301127 479658258 237323441 127184833 685527971 213061401 970411441 704937930 495223471 642088956 63122726 542453025 577790318 596812423 755534047 687306925 575757800 235102038 443807547 211092998 608777693 916439289 642880435 577248946 739968413 185512726 380477496 451704450 703723303 801383317 15307331 140814213 166724564 912514352 347740779 115443424 752973301 307078192 776090050 58264808 315035084 546322722 867710998 892843606 912116479 384653278 816479905 256876075 91337478 340768337 988419910 899318627 687668522 944877853 93337672 698011999 205032017 919386055 968684630 590341245 228053775 778806494 376691919 385622253 720674298 23992606 105114903 223070134 666259570 804164963 312840504 386784415 598876882 288226657 133462745 415190448 124237664 186241741 856002070 376276563 402817316 173111904 955143064 758853835 932672282 498377000 717706213 336764655 610089870 342762572 188193037 869615447 664304723 682310169 113107696 959092564 962936854 304394422 988069659 321184990 278024304 440601082 657390520 653304507 603071736 690773615 476778463 790762135 56611400 499039387 526963661 915001709 964140802 639998118 646560878 556407397 832216072 587701836 599844445 674516223 966126769 628858393 274650272 18778920 71614389 98180103 446094105 398781628 110663989 637618673 918503775 703923852 773126007 365531676 284608283 349627156 585196229 311518913 66508991 52934081 554673650 899267760 813596220 709317909 245420857 680022620 789832544 184457488 463364235 891998139 761881623 600086096 387262004 47237100 113672901 785000121 448518222 109812407 668855614 23807966 882967807 98931463 291816010 157197790 433450006 122933671 693127818 622668494 534839445 533181231 413244471 78780396 621357818 300506145 263545255 184565859 481747141 9220333 84760461 315914832 506883307 84813211 413059890 521801136 475863086 397747702 641625987 928666228 567093188 789614864 873933547 482824276 133286996 201076012 865914399 85806265 228192748 767131124 559567058 454723038 477603348 650776131 313576286 814469870 620865338 274389291 793623608 405538232 102788510 515228446 365120811 15252104 341539319 714303731 329868586 872688989 24575089 136212129 436494933 607927014 7554890 705274779 110059470 191429434 15901739 937015074 413019198 730105837 927056611 194290357 615266449 113794444 342713218 347857810 364739158 729199649 560335123 612402463 960831859 409032957 267694270 729853437 456190509 843180092 927578062 744549374 2304689 19665490 675267641 349465910 881831688 501975629 23932523 308955214 740700979 742096119 187077466 492944302 289499688 154081127 376213429 522620966 447351053 430547506 877586817 959329525 386935809 891207501 512299720 235790014 678326033 4743477 538637695 62481962 766535756 482197146 33814115 379005237 496588021 790101159 846341405 101120574 137399284 179003228 584347192 934991596 545886550 705562984 655226215 220215923 461894001 541676756 540956561 642803083 223243823 847518119 958235442 82827941 701103520 677100267 646119522 557155062 794700763 799420676 979550023 36634540 968367035 112006825 807566030 957187584 531841457 319877436 686167123 600829430 445968847 242056818 245831889 309529631 684770433 558645204 110108800 715931917 33960353 266903924 173595348 704671570 88333885 328891998 252994660 598712201 172509 418081523 250270696 63289651 408876700 864576413 444042512 596109046 102833405 962857704 228203736 554610148 906932204 281178524 400075496 490218992 160739548 282850154 698161792 646449941 741435961 347133503 638876269 137547494 52378284 135582657 139450311 171096936 354099069 329599149 440124041 791551669 311229268 595894064 729352689 76661628 573426110 477826847 907103813 98471657 655736964 285619 351172309 290261367 630052180 57299474 429415417 645983604 101343723 927393129 503140358 600898415 846278288 39918287 973223984 975272909 717039304 256791030 921719480 65777980 464782805 494337173 434305428 189491295 971481278 944184744 348771715 981861565 511902797 462350485 226814456 506705409 505202906 129154122 909757346 360055876 368099482 75955948 159855443 995800199 98848396 215273127 692081773 617228705 578062289 257024368 121656798 111343580 282842265 910334953 255091787 304920509 190429593 504452858 497230222 344444027 716678589 886673430 158625583 540394412 181749033 180630551 893049231 741089260 958660039 376745228 621334533 744754311 439454671 395022800 464739547 888313796 74303688 232404468 812683729 224904057 203347201 432973472 696841259 596571502 278246721 541663803 175059336 258656149 528733017 658712907 210857744 360181810 425268041 391646156 985301524 431487535 896660480 75077322 886363900 515802517 289776408 234758082 747443846 171240095 900522050 211255208 714782197 767312881 180089705 569974477 512838177 921446129 64305061 464383815 351036394 46009330 891165508 909945607 60744289 81165773 446014432 337924857 296542429 939601298 632623562 399413956 878283290 183540478 143472387 208692932 79274411 504024623 230363776 987973116 380306282 752006771 362535367 907401449 707707590 377451459 95800389 965066073 774846750 943155344 892336340 479864296 540068644 255620502 527566132 909687200 102660690 937874255 407061764 30515228 165520540 226611185 792662910 136803576 238596187 434121184 673862963 385626322 382428845 996601349 204627409 790625822 927432423 815391723 658622267 69416833 669525775 224033823 294045103 282267409 743374560 737359035 151761195 37994087 235103456 72161916 949409270 36823543 111061951 356255605 600537849 528645569 227108962 431917656 672641757 699278956 912044228 127770593 786702171 823155984 476132959 12954499 683621457 421161623 556340446 598406555 336398213 588832232 553558255 464493660 240506094 161470968 293992553 407796272 689734611 736317283 269103694 182852183 615671220 766026019 854083663 712405203 532237272 753061599 9526917 445172868 728942717 101239388 153293800 75916896 184631253 15044184 487991197 912861295 978967803 76613947 12628585 318489409 312549818 767116301 474301746 954491795 975438049 480940793 536455070 957880357 8935585 92948192 555276811 799154952 283795628 426514203 288110928 603980986 33385785 742430380 133536895 56951799 551739685 208306744 778696251 716053153 607145041 366180408 920670350 89670945 887054939 256964207 560887828 780633995 921049172 970863940 607257446 613684786 166816655 402538262 942559652 6935489 628735664 560210719 694103766 367868382 775187567 779369636 164761419 114704373 506915256 872416809 862169450 245419374 850814019 934301054 496712231 382190357 139210010 440813224 248674382 304081249 388837965 772834087 97239934 196609707 300497557 628030615 177155827 6569374 549372216 860009610 921545513 471307011 926775634 588294570 426739982 559700978 285023241 299815781 255935163 368705255 686345712 288850470 641867059 734627632 143904831 773245841 483091646 605610708 22031770 251986519 280557786 720738262 351461882 878952613 158119219 856286897 430725068 822069907 512631290 220805383 552761104 15692447 938753269 751252012 427100843 316525698 688994660 434201602 450581935 127419905 685000200 390753438 375645867 377775357 147052948 964196876 239450808 201587143 812058199 416117529 93596077 793466157 172811040 932725316 755753036 438163597 849026589 973730070 167877160 391495261 673066298 395899451 231555015 476099922 16977556 921348337 116760343 256563862 248039177 132900210 268632639 701948916 351194200 96973067 745596497 960105781 950576122 6383886 687467378 682141 953768405 7864023 77877113 761729373 106519428 656157333 991203259 507066081 835343918 408873647 135960247 46065035 265365617 556157603 231373865 374896964 626855960 91753255 211575968 287028747 420817025 372705363 668909405 887259263 613720227 25366226 791565069 175191096 209698579 784111458 177750772 156326284 49797895 583294504 962471659 793923219 485653213 999806696 389112852 648297009 667959433 771585179 440066517 228795049 655663006 325601923 265985549 81094283 489794694 494838546 738315335 938823904 584389955 605434103 919250345 160412017 177859347 391308528 489988206 78802267 421783254 645303872 906313863 192706190 970020670 599271292 354878346 318444761 551862183 549098484 621658196 968270240 68044794 621290516 526279394 837762860 444386787 907272973 461480673 410632943 509594227 386895404 552242953 239825483 586180029 721017309 756114087 967737277 959531054 786307842 607221176 318011249 247980872 472390031 829121420 45458847 888318505 900411586 427939868 556241698 420957780 928576333 919921081 712686559 13708283 882052999 210561780 792809212 360247664 122246909 184480419 417465546 734997823 449279081 790819385 421472784 442281519 647411202 639269070 725120683 881360550 276307339 490611125 498997528 823378838 571404403 826569402 311203534 243350701 192943871 818123494 624970951 959716711 615122707 114967242 201225270 967292210 965117211 565655630 830613713 506326789 569358229 331846821 379687330 809237334 216139923 413583718 55360636 327191145 788694269 614316595 911915888 792445514 431550303 896399036 870015432 951597248 272956666 67438049 714199523 83262781 394427069 458948279 277809876 47774760 598184320 465404799 666403394 389131059 484035645 366039528 809082251 321851854 530940112 290384092 518697269 160624850 146601423 981968028 586440727 364807384 79464220 254130169 548507791 457885088 821849846 72674976 880971350 694854588 534192682 743051910 372895802 201887189 462413958 654913639 736833010 127648407 536510139 706326371 249871899 505287965 400756766 371227553 760663871 40128769 622792572 558839022 989596978 99407104 678447443 830456013 26223928 152858835 857483779 298012905 818833160 394899941 501841920 81364676 539516260 732874927 734769381 706060631 335823795 72180380 395624822 383066661 937454066 816927622 661821880 196348801 54911276 492413482 749395468 797209102 984597566 399900451 927301818 626878015 897133605 726909404 279193831 745870506 44388647 298280191 267368084 928836776 152313431 504467204 182594378 670632947 113241370 995150951 272600044 472210555 43537721 129357327 305466604 678917892 358607212 136331753 269012120 937993520 594790295 91352216 235284225 205126168 908988059 424705935 579589541 44000967 354326278 895520947 984210196 490371267 931448743 753427304 922663174 112780116 564642016 864292928 741441377 824679245 434448350 339411302 195131997 425063176 626933914 469683697 655920400 956312749 392354574 136554687 899790453 453156740 656923408 625035155 442622223 745671022 354811577 906419920 659586300 573502871 244594927 21261327 285320580 47752441 984217243 477296429 783769570 155366755 218169128 363456966 113720561 486445212 825694708 789479887 678001465 510594965 365682636 699430726 540931087 546946711 743323759 996924605 478684316 536797743 533367764 291989934 281511387 144637300 975618135 776315785 668310971 531559154 66113412 758811985 11472018 394846198 649707769 483391704 987732411 575168974 287418360 598367472 774267582 46171814 678558484 132770057 844518209 343007822 614774576 312137914 527323901 569169531 432020881 409648494 325885264 665779823 206160327 211138320 457203220 414592599 64656229 81902600 630932500 957916757 72807738 939917463 213766936 42639269 236393410 790703118 804747632 678732665 68293800 261520231 478679449 449777075 473451115 78332579 787087060 241136008 253140959 848190358 969201285 870632199 405622979 137615742 219663378 885431401 311032337 368145910 796125726 972791508 524472740 621119131 709414700 774379769 267524440 632505783 38923230 786628810 946198918 568851136 164352207 117006643 189275087 536827113 764210518 104345278 226456107 311901338 857592976 355216483 832742040 611375254 906590769 993488460 432761567 659246164 935772492 221256929 381986969 274521531 95136409 293184714 154438105 882030845 456054340 758417807 28169298 195421173 799343256 899185790 263994900 545601686 224011163 462194541 910760662 45084594 466687717 309310657 892525315 338446357 338997228 630153417 223952137 196803503 615473436 753387212 265797158 442420349 608291499 760971478 31735336 456856056 317707142 714726845 524246747 221241786 403001432 473780053 991150565 842373162 569321109 170697984 702148400 435136704 10096774 243014474 881735948 591893984 571318112 196581628 587998155 699777766 646811876 547614386 558579182 35930401 103509589 220814921 197750326 701803835 492442417 463565502 30800478 345186533 37708995 913878044 602653557 616045974 83775060 601539295 662938137 537199095 995611089 859218772 953794927 411216720 891284964 543017217 530402294 204175411 121548089 65340935 353285364 831156722 98371825 186218959 233273327 750922687 786118641 341807510 998035462 709087424 679034032 232462755 624516377 817761053 849398123 259906497 804438807 850954879 710690483 641827878 149901365 84424648 246241692 288746893 673009995 643033464 466202202 427547258 72497818 633420828 816175333 217993365 882817539 229971426 191973714 649567296 432120264 676375480 556699615 706270630 59680860 526254387 568746798 424289334 772653514 295703585 544954813 231856407 473870662 63930201 944542577 185321719 465024903 720888890 146922005 419088284 458389083 105909241 248210384 11803342 511421187 275217163 964933456 578973057 145378877 381167758 420345372 893330893 563776461 69778565 427618684 389453923 143575652 275459960 448953326 260504626 998233458 522601612 971950215 786957986 37483739 413257897 847068224 370906412 123599693 487846163 421777035 991403379 990155721 502264830 616008855 788926055 825171998 475301359 286720089 714584761 514375936 902528944 571121809 167690572 622361355 566274497 708827143 664173379 681935281 738984860 400902579 354691845 811831426 748614396 722394574 958020 918688554 720828455 551892496 42180783 753648098 619489592 124563684 192757022 104207769 83391789 620942910 251156976 71646962 340014873 704610597 786868132 242652991 296400763 20023438 645073598 273422918 409333933 367408089 835035102 279849169 64157480 471568741 34086937 817468348 112439323 284949671 743803839 476146376 10539025 993947863 251836608 803307162 422312556 723813619 168850295 443309946 776776170 419626553 434585320 341581555 412400388 15688855 200612105 55839752 629545255 600995721 847092270 899551089 660477080 252445829 388954199 895070301 874861242 833294238 797047515 619691777 297554503 967275253 808152506 868127105 208066775 57641143 471154796 750413202 819538330 883360007 365936540 376286236 922992823 388824372 605278142 407397376 141973358 952494010 768000637 250809994 560532605 742992016 371814202 466112647 757831054 52376842 488545895 837134752 775847321 586069591 497539872 471367028 386134384 757724163 415967518 741191801 449882819 731678766 417370792 549836426 535800833 854433324 382237706 241202749 92551222 323911147 199752230 810959452 733829633 848825376 385091428 685786118 708562086 638888270 515322181 177944464 144257254 628415862 649813692 47750022 114184425 82628239 312055896 24805009 379559316 623196418 81581291 519846640 512474491 393264858 44336 371205175 731980057 39376873 413880877 153876348 893758530 82264538 791152555 96767826 656120854 680749745 700981086 383750138 82931413 39557462 621720524 432406194 400186570 652348392 165194209 974250953 484092398 420343509 357710375 302015439 81879179 361263937 12369582 193539931 945587991 287066057 428470837 711316125 759210261 972692341 105631406 162731516 912962664 829779449 692269782 276766957 843459134 392384561 568636993 38319580 160076603 901693733 338069472 531833781 170104428 551659975 316259377 72482568 902136366 842573823 733440444 186485440 167115178 26455418 488991504 412128787 175116622 53618276 85400053 740354153 104823082 976665081 576137500 314134671 179698770 959441259 921156155 240829167 326539131 127704953 76428133 739852007 545941347 131738609 569211157 482433368 151056052 699188696 727770139 201135181 112304267 137741969 140012548 808405567 229456104 40038240 983070219 913023800 487925678 504566526 847152327 515559369 825355923 803821306 810825896 113089667 483609920 535407108 17749898 711032090 191336245 290655288 86640363 523895396 723374459 945483126 965490714 220075184 763283293 29826616 665566 100474078 729221592 309742111 499385855 530720300 888217645 978655156 65857930 541997441 192324349 640933277 707618583 355374510 298344658 504043295 776824106 487027023 138849896 114783672 209029089 467260457 423366243 421041975 630865170 285307014 562901007 170725730 894939801 17521668 799843537 10042908 469704410 250435225 733389332 490198239 985622462 948513373 230487112 486253968 731650198 720477785 208185998 377960337 543363417 797184829 427371482 151604003 505763718 825429140 909030823 634558052 63733900 972991890 522361776 350491433 553295457 838879432 126093086 409053823 294530258 575904800 25064803 137294355 70570733 6672855 915261092 545248081 855069470 496467116 799545370 279934015 175062371 920516875 9036021 569707388 906487477 498411157 235718914 702616569 929018351 577566018 133025124 798591712 286257506 637810353 479489247 218750245 3531554 942477953 240914131 795558334 566829851 305045912 485345901 520254631 352386137 930477817 416624999 386296933 193979898 752273670 212117187 141174641 602862702 557678185 243263637 789795514 488910758 377217862 139306376 131914047 971620852 297695049 165216076 372580917 539651031 524818682 702611180 611503714 987897296 820350058 301140242 684238463 517958576 642040710 516752589 858034400 218031165 242994863 985331816 826940154 697315522 484978802 924608874 631910356 419941155 155972215 472026561 823014109 879117706 505229413 76337624 726452552 659247394 96399392 640841152 930580021 339285299 240854609 996394354 407698790 757111066 566452418 90997037 662738565 146268763 434070939 654400303 176946388 997240545 962574952 183100137 786994568 472789602 272160709 192795119 717809879 185957920 751841298 231208823 989811539 550913670 787478503 664738873 80089178 871069539 933573333 156638212 116259860 886551624 788660293 583544549 96753983 126914952 576050154 593858873 555753715 793917588 140986282 618232373 926724802 894120149 57550340 273099637 947022886 322877342 853268303 793908416 895955137 218675888 798868928 935520709 566377699 651446291 672929730 818889283 368710004 584898699 390514769 590256667 433078659 832430891 71196530 451372866 789673896 977306455 491508783 807339031 870900485 83189595 589910913 294315202 603378462 961925604 931277523 848291713 822371796 742736099 500416926 255915621 158410400 928037907 971428047 804987330 776014939 207947440 607936272 426728911 403883143 63098721 474410298 352139607 194311862 100284513 446668778 616182477 179855883 832626931 15189358 889716402 813161832 833904802 53713351 263909958 807304497 654007996 332509782 728842350 12321481 28697016 674415219 404539662 690980696 337766260 284603378 932878267 854258376 647552013 680615783 141729019 472053549 729394459 909009774 412756150 55336452 617377947 849325419 474432247 147928246 925411017 440206527 20959573 737881006 667373620 4907395 257403290 490796265 186928649 168179078 743500073 513345707 331070956 287817649 513605611 933971985 673957318 544445681 230547335 694546984 705588597 488416568 547924239 616227698 914957494 50742940 862705555 533019427 205540220 813079311 5508978 496026111 51484872 758203842 828184414 668422903 929982049 810568240 91128941 361963394 669629035 646365012 198780223 211524588 625177453 993438605 288276005 283761569 443519930 662563291 940707571 355405377 657822391 565319329 5762544 688688254 799179668 779304613 748976199 219428674 782744394 768982165 240725505 343708127 844732436 668835803 982749702 117442521 849431667 518913808 439449303 559225085 936161694 206366445 872268912 272944878 411275720 900879049 190572200 774542756 814611717 263113461 296506491 725450211 151163593 177270720 645655976 939112247 124085847 65538713 512263180 183790040 170069866 440577299 168461135 72633322 648938460 635739413 990071111 368439733 682235646 528211124 498119281 792409385 97919485 814775451 991334441 297396785 197720863 47913963 53250497 140335266 933832076 441871262 551437879 383107345 692571736 975952821 340819962 503405569 146045554 6737764 989425234 687090862 568851295 982903522 284134323 213267431 354813765 581836780 950348613 879021814 87356184 399053905 687251595 442988362 561339722 484929575 377941636 898589909 485434799 432056333 310351777 493808820 106562955 767218920 600862205 43662012 512969090 702228290 900365328 188214107 910080899 965602351 915895793 433488195 153011692 696396142 597648591 194209402 837893195 438478 207790133 421014586 166309868 419305434 441431811 920295903 881021415 289784895 930169686 216523007 331840600 809128513 181605196 378976469 846747061 709229846 838385238 646649804 135838021 183543987 792927121 787148115 183283248 407827713 593705652 390970909 269108961 17276602 680634937 667549616 562554999 22842616 240428900 86748724 911823129 489009000 619093184 361655732 572123458 502058907 72013043 777373091 314686723 614807225 63553728 111750995 287522241 351044242 278209711 83973797 89089154 386183100 128451259 643023035 994108305 746307224 554363284 641865074 911865473 812641971 393404238 169216106 849853663 385025092 435332054 781457750 890465613 141810960 764295248 228764329 698781649 225998022 412909899 323814337 8376918 237327222 892348986 568658121 519518787 790244182 917727147 597570708 177221998 852033240 634120299 533710816 895367033 98959944 682463677 428377413 789461242 143994780 128972062 261111155 52159996 404009458 869179938 382012264 195199425 369785705 73273956 548807569 253439568 761524949 616888040 190193294 958606806 104659442 539995480 745057993 494626274 404796953 252036889 689541988 733480312 383587706 646847145 185806917 104033761 906729344 413963260 424147443 652196917 665167195 703689563 99333606 519857721 907277513 480807876 547641088 235321647 366427521 917199765 293134917 715346792 677984720 240270488 603508401 352670831 133036590 833093320 185412343 446399350 875207414 569340763 493581978 84907660 615631537 513891327 298665351 162582434 740075563 305100972 187471720 634293445 342235850 691186372 519007943 184419547 881759147 207837999 847651491 740035158 614706674 7292721 315631142 680496038 922733932 342837500 305640376 303768908 276154767 830480792 119920922 571826816 794736606 346747603 352133720 918272415 812829592 561288618 380846928 406712500 79034566 37107476 642780714 165442457 512806449 680647544 864339251 524409544 688488116 786201333 897481797 237134508 384645946 420893814 150216564 731935190 944100910 764444540 471862099 727381427 925399044 86995046 725288361 430900042 567871486 897845700 116824849 539697863 757244893 536518887 232389468 618993609 752381508 57302685 213960873 881168993 765968082 232198705 627802130 332684802 10596800 395257429 773619184 273784063 889773553 356936665 78822316 129532026 526531128 211407179 798102039 857397916 241610457 466533984 369929699 701726346 551418845 552205341 210252867 641657547 62109883 307760941 668144645 978054087 438701353 279079514 566929848 409575601 434146140 855492548 41132827 752469830 30682192 119656842 12255878 628758563 567174271 509936130 237279831 983223151 242222302 52555081 643322827 508060192 286463711 916095055 925890895 367833155 196445537 313589303 929819702 422913706 451820315 999737701 344400798 41092914 683652643 701939299 117933108 304513815 281765217 995840170 445040988 919152188 384842096 197571062 894481709 538254087 991678504 448106150 821057046 472404575 438575301 807336325 879947063 356813704 140200608 221340673 6345798 841607634 840281818 27755480 663285208 81436757 768850842 381969055 657606635 283630689 386206451 466694275 814335192 25517960 290351727 619076305 363767748 183974519 147397043 872516072 706534359 957013125 752059702 185753746 449253659 945133203 413937452 906158373 992361725 833083586 891088589 23499617 42795553 395912045 694722067 792219061 170259929 36598389 534380998 662548323 734051968 503920052 114015729 679226368 262700520 368695271 39111953 845687303 717080673 775420517 596998759 956765757 175759953 191940300 800045973 935386041 354391390 656005020 488666823 935207182 158663937 952390050 249214637 679786463 240424245 307857409 134664047 878306976 384372624 728609470 766256243 592368070 101688473 241793558 571056473 506469994 248418188 345090908 627460408 827772086 950908216 123363936 892823226 862641347 730619065 849266355 395561506 632217801 407353594 540111178 637771616 919767792 556013172 789696410 200422142 541454398 28356627 298525435 699385941 26805582 579412666 92661519 870112868 596657630 709956453 557136808 995032192 458452817 254496286 450119916 670826395 899643452 972075885 859302472 455905541 967137624 213355320 493766560 598397809 601577396 927838702 945780114 880380196 551151041 738041524 635271324 170625774 241114278 298297284 831472744 396995687 817632235 570182222 589573357 820465246 869624753 364060310 422336468 141473547 138795885 925642209 174674853 336341253 635115570 323166992 109489484 596351661 88016107 115310396 801459503 660927278 358815013 603601573 343041909 708152750 316604324 197027751 380692902 506508446 542779629 471541301 958401112 694126373 635967380 806675146 904815842 874442945 774945973 977595219 462791816 6642557 154609087 757887702 410810015 326393620 932531310 425886461 234386434 806621322 967671726 47338565 416960718 203529358 964006663 336375728 472159159 598001490 757457159 347423569 668064552 868829250 600188428 384923972 679164688 436471036 908430420 974508646 454711523 100265829 859956870 995216646 850381351 243048969 115862082 207016158 637050634 223058195 748708244 158697178 333987271 187522145 625398151 708625736 649786146 552594083 780681967 679568624 38729769 184309666 177810701 976140633 554231341 770433006 322471878 617975939 863335601 807839092 90240139 486185558 433936371 398143976 201287274 972672403 533749553 907704769 142446661 124224476 344906068 61861562 89101681 822592807 770536576 378847531 309265946 843384422 949031987 984517576 686531281 875150537 703246018 86294455 904611477 981943976 400244766 48076053 401367713 910020756 221460464 221688455 742906325 369704865 278103331 60274390 47189197 291297197 380840078 632940368 196290864 956257703 475603235 797297470 603844151 840129063 80721650 740153218 631620218 779880255 474341323 353125623 4943327 703970492 127302132 5714251 977470900 640993691 26947332 624655166 962870906 601307709 568163132 862538479 82883082 26033301 452045412 624732262 13309529 473769640 235873907 829637635 439584039 651920291 362509989 837668646 832392470 534075398 413736806 892988467 375043003 529593179 413392943 552431599 895801446 173591915 54750408 363153658 886806811 147643344 287071098 452298070 520382597 683657956 170984718 132176719 231079072 619007644 16100941 489465105 834996193 23774873 664745916 427386177 129823510 882676427 626915175 353569210 516557035 963427111 78008887 556405123 731118863 623266867 385832942 885399762 678039362 128680660 815449425 539687033 156752774 977422148 627806933 878299442 241197259 70216616 763554332 691320885 73051223 983400487 938656814 958753163 715691143 350634701 423825583 677727997 54237182 319798259 851708905 796227110 681080742 938044550 58653947 540193045 885412817 269102084 285964418 807082264 719319281 349783010 359644097 791342825 787644673 154542542 393905490 321857948 280218770 364431349 194311051 264554418 184663180 313365565 346054396 954024200 209572118 494176124 932467696 287676191 312389554 154290959 799635730 433600722 80885222 873349658 970458209 570008793 702102053 860782411 11774757 433997415 454468772 66206770 842175543 234524619 145116692 414862271 210951873 397912560 80565656 486871878 842889849 139744557 874020040 60060612 14801113 500504039 987827197 496140435 26130412 244458709 546407287 472702760 50589469 890744815 396102612 618495642 354057297 642860486 168829417 326999906 7586153 471848441 332098264 102506245 41095886 502069826 941904791 592150426 516303586 386020287 931029679 75140554 465786545 375028121 927187346 330723606 907918735 345990425 852338368 492044123 683935916 434657822 320581374 759421649 948034744 476638300 611106260 511933749 247469081 738154928 374911351 876962721 618447061 797849276 573002906 546036342 9556035 311696627 385415987 129983238 366940394 217907703 308426858 355107072 279823515 697649078 667135921 720550679 950892662 261958607 125703657 570247314 795685893 99365011 21944484 955542041 776300782 367767311 429320489 240906454 698118193 617854542 241761198 948761803 721760903 204316018 532568797 994991738 17998978 884665622 452495058 857392748 190665142 895568954 37149609 843244856 7940753 5987448 656948185 928074993 227547057 568304781 473549573 344187208 905620085 216425005 724861080 567230094 352901989 505261834 132268820 411903229 530111337 438491329 400862120 285951844 870180333 860754331 205329450 432149191 312131525 100928488 948393946 791908274 87594832 157124211 393511837 939112967 613144011 935860544 961448587 849905439 766138587 452775991 717406393 972754805 284952073 423634341 656977192 146881068 384380227 810679521 27337462 492104994 539368150 188258378 130793761 114854439 34823228 564253190 861583054 926307750 593998038 90914675 442163446 447235553 521843663 717556814 867388238 497975100 670952120 473543925 227888529 117207751 847105841 352154738 588290519 978672770 517844803 862101008 900318624 608751164 423893290 217908969 934632275 707576669 40446048 789747737 521962068 980109647 854344267 349867327 10127551 301896149 433942386 832664829 292475017 682489630 303130153 968993164 235897100 103990570 11742678 430377191 418411644 734703745 478978241 413655953 363085799 186050995 745809558 196264531 852926263 730009238 498307175 431341781 188770748 980530037 755500610 815321804 733769398 422608734 43616247 638075725 735721464 532243383 169626165 736436198 383844084 246811837 113377201 991038064 650806339 88964427 592416362 35013325 762871650 836572413 222653405 189306697 78606381 150980070 874047337 28678461 240437399 323775660 157518513 516769661 782013424 318115290 507057519 582880854 460645254 199798046 542591925 304161858 899580171 264014651 398752670 187295720 889391281 873987022 458105988 165334368 148856178 307895746 921579290 744228810 340826739 738457046 792120689 381825102 42675760 976579324 674808234 557150763 441205720 739248719 542314664 406466614 103528054 516226630 327848854 721462986 382170756 771307962 861431682 104339394 169550957 691788175 584938023 706703318 13160556 517333432 942803131 945363655 487686301 714009216 920968728 127565788 282432922 124621527 890500153 626918742 352477407 403357753 923895570 575794700 639172968 170002510 27795334 729573053 811561370 702130334 299407872 599084622 166820384 689176936 959200594 30822946 437057147 587370327 27543211 473734405 318376369 413441650 554349169 573246420 282526051 850827640 280664457 431926058 285397822 636032978 476035892 804791978 365873911 552437436 988858050 74256186 484271781 421500123 373849221 626545353 790433896 109251764 373351064 626888905 182532263 362943931 203736110 810140493 387141712 723653088 909187105 101295070 999880809 465449197 12174350 837118700 850701060 431300759 85786345 979062389 435680651 527949754 153579919 523999173 500994106 465006078 738515082 475720185 117695503 256496386 365105849 507753081 412107630 714003075 841029844 155941747 455118998 78732318 675348636 128846887 115045082 571460156 806911751 86693872 250515657 64103678 192832516 776315058 392227582 122068594 286382367 341809611 302420202 625521136 485036039 432331391 863459163 532073556 451457726 784372626 337192376 397864029 95113135 413688659 111607667 404570867 782985178 496519432 437936149 219872934 617112124 726593467 950524571 704059874 800797037 586365622 735327482 244771456 876126330 359498871 979710443 405254211 935425621 908609419 285189763 734488623 225858517 575857262 328403429 611644026 698661622 635422719 232377128 959846873 805717061 296636785 305908231 861546379 299273183 928585034 65827956 646863297 229310354 446403842 828953380 72369542 610393250 699061016 180661202 827759269 962661955 118986113 573176636 553851112 701412592 924056216 139705773 572383521 198012656 51110971 576160226 706603879 947962531 290010309 92101955 20925803 966219690 552719437 786375317 372839704 604090257 931861384 753947460 378138378 109818889 597231526 726773904 218792319 197177928 93971317 363287068 391478385 850025462 125673293 780789434 838401693 277232064 600911191 898155274 312384165 723178130 194195212 451613220 753566573 168541747 408567765 962192562 234448639 15168052 14747539 479995916 364560668 539820746 183972815 844118065 964690029 923892241 726856398 517176825 360881055 447459863 122863663 443463682 812156989 604366503 17167668 572356581 315859294 952657203 285472610 457926778 954055639 719298390 172586217 531788047 164733394 435194105 972194092 128363294 411957754 549961625 310182653 410109291 824244312 5777948 442696562 169617030 378173730 368042319 105224220 434859262 992225982 942043704 540795607 666251707 134256424 463555744 626336975 425080112 738109151 817723169 803206010 223415481 635842877 688133139 185583490 933395246 602519661 698262372 208685143 547362754 760830821 774729534 847226005 808460471 335333994 93690904 894713040 399966420 16993542 724847162 576132216 544561037 237992770 654714300 722569762 359075164 871252443 358567136 356257040 373409569 745841610 371790976 389739541 1752755 240950401 586607384 760150551 901052211 880652999 734406189 581376381 833658825 286551081 151032632 936140115 721858451 271735994 589889755 33433079 958781186 624157115 441167410 139876870 522928872 786245201 734856917 152523282 443130952 375741033 323810304 836759698 324410935 61447055 366950666 588311640 350743480 788401852 241781897 621382017 72657945 275671858 241433073 719226765 986822371 802292848 327772231 506891821 430078235 344027894 152233054 426662049 290997741 77124721 683586515 581193602 408484569 110630195 425812243 754213785 117867137 137185100 217954225 891067255 443279801 342461864 109483777 569611722 528680987 538610618 634077394 932759526 537527257 419670683 621902587 201527953 697622294 762316073 190404933 386880709 696814681 703389316 275849355 741675193 31817881 303097985 183358110 489003926 896353602 867585369 763034841 133511984 220561019 709553670 951806588 472435745 674715218 28311939 742585250 930037594 925621566 269664449 329140305 897915220 57697745 743870303 215743903 654668775 911650772 716785239 783496452 440345282 725755764 577311329 543492307 165547819 689761335 382577605 786127028 484030874 276865080 893483363 209381033 509553274 81928966 995723309 569623769 944991849 152604538 701111384 142522323 188373547 364918054 867099171 546797832 14324377 965584997 372859563 188877425 589548822 817153277 63144673 342515748 827140321 159804511 915162357 419818238 58078687 996195119 629028801 35825976 35452614 112435901 257420274 63318259 954931924 965873545 357066218 787710928 877374494 30107284 620136037 559063676 387924211 655395358 798728084 232129967 607053030 947451147 175205003 934314556 447586534 13361477 468408681 120805773 800583715 694267056 737684656 75442924 689421798 304450113 134216515 838939528 381501035 378604706 323810195 730994987 60781460 604394743 175536824 430644796 429368685 565523293 753260010 614258974 324666138 283612967 884051115 214016184 235441926 615018056 84609076 857131082 994164373 493337416 591422060 571590918 22468905 796669479 795931424 492630185 493528233 506322997 212882664 892419967 980499067 839506849 588924103 463736801 49133466 932690971 621456803 376057625 49862454 167603892 849340478 133281627 850147617 556463391 924657628 344329103 32626546 377374240 405648187 457590690 459221974 246250590 413546462 733178390 154582441 966491461 846159746 12078383 647857581 807337512 330741164 621103159 904798229 581845468 253173005 199760714 538722616 385368021 879213900 176250087 448448060 371727529 954052280 462238631 265952087 437755997 863791417 512838923 868440720 870682480 379436481 503203458 735192563 447588486 793264104 145317534 429817790 969115167 747458598 725726136 30854459 449778921 266059536 337137334 598151180 462797028 639435339 815311699 288072229 213986277 405997819 890397289 740788004 319655523 290443264 120257742 848388858 320292286 782474681 125830181 767570358 971879198 676147873 50104851 242785038 243949850 268481997 66478633 663755316 248791461 161093003 709853118 55129900 86791848 735037323 188492981 244846592 106619438 157148203 808916072 897623012 535023622 806339029 476560549 264875720 484961925 581561057 965847293 419392770 503779709 914430060 737452507 549386732 248990057 945040558 627445218 96211214 833393877 224434373 552549273 787836309 778318953 697357756 820866027 489675840 371318826 303261999 961206413 649018801 841987008 857395087 671210729 56063219 693718328 610169938 158872138 534760781 182065069 429750010 155959688 31186207 493941255 402088883 999672197 744192511 177082982 479362585 463370425 494815732 488553843 726466163 905405494 781717148 31732756 889591055 421175926 308247030 900912409 61534806 767925171 820577851 811935525 271710879 721380153 601858556 705975204 113048673 584572727 778979904 143597058 944336097 983869883 952850553 682933571 442730539 86331526 602233310 416866414 55257675 687823292 953014074 272231211 413204588 63622917 418532849 475292817 663857153 166807123 292005129 356720971 702620617 615409090 477360536 256019248 585166980 19392335 228893228 581829894 651654847 280591875 75256619 70343047 6740641 790412323 479194751 937529217 773730030 162461219 908220508 914549842 38194525 119896321 726270808 818849786 506354986 141398566 883149013 373749688 639697043 350798490 993277715 884619330 376878874 245111018 163139681 591570724 953560970 870006644 591194156 689504178 695364831 243899992 179470795 909173409 89624459 806750710 590038915 595316617 417054739 428167937 968521865 379870136 60455990 2430182 982893184 354502215 750870075 66086228 656765269 314562301 19825642 103154695 485448860 14847365 105299610 779782442 593759825 932596672 679607539 12469782 214555110 123175564 477246747 315049299 738749986 99786690 208106847 403186165 307929862 45335251 436581366 809580646 738814510 831606414 94166964 790505367 277108302 453232667 910658108 851977382 798459022 941315265 995659433 402908673 953512219 662157497 882918477 289101912 381320468 555871022 539884798 476637005 427470043 524047846 772140230 514378168 51591037 932570213 95850775 432807661 630718581 670515220 851914026 198471881 146968173 117145803 917327960 665086932 180762446 729287896 301781989 709051738 863629397 283913600 836434153 832134362 678532502 516845681 93690591 275533658 959376988 588734351 10224434 186949632 752276529 518420296 648367986 828833272 356094951 961671004 269537722 888173671 939283317 670501488 166341400 858393212 920256387 965501001 706858923 271993652 298368667 774114540 769728071 341130612 327377637 374841193 90948451 726758318 187526791 287099117 69118028 872999572 574963505 776516079 174514389 902775059 411746808 374888471 142984981 948288248 120864501 552813775 414875239 724228629 455217952 913839315 765245605 501123734 615119841 708612485 331113268 546049149 537051555 793975791 522688200 40054702 59968409 925000759 693336062 271506644 985389535 933835585 31301880 939398648 683158124 518134010 731855558 575855397 652347506 580977243 988697092 729333965 963787036 280047433 106016509 139049582 754877480 676593143 842252015 706077023 314977527 701121610 349291773 887867405 471281982 802577032 263037079 642938309 775715624 504213261 477866128 343773156 213418052 353556199 354471789 942781113 32882229 650589806 302638297 777956414 14719402 856627192 791344656 807987688 118527810 359431883 307653381 183639874 756868810 126164916 297531007 488108093 459405797 703149488 674405705 804002513 475305952 690782057 931304144 166021517 5814155 931840299 320102874 69040895 641869274 718877432 703656796 99897804 336831999 961843444 791016335 273051274 398680946 307943234 455282130 598158178 957561149 94159466 725402866 720340604 300801249 418865440 922221243 690225789 808947284 671732025 389708966 981204305 186871396 751932593 250499847 857882434 340976937 263356669 424484019 18283381 399792435 240643025 463292331 138512136 410420778 731386974 846902692 996522174 195780611 39123746 330518406 642193191 101506026 721962155 667479944 338574902 544375590 154576697 703497652 271444836 619888719 974089155 512499215 20120204 59412568 403004758 694551581 494570367 465492667 472511083 134141148 488104108 739767356 342732685 635170895 590950064 674128723 574531007 167901973 779116233 888187145 648511721 880606593 534555494 331119161 629576495 320647240 844890916 263413675 610853844 195986246 336989322 471072441 308919926 942786728 599394561 368311261 207380383 253071648 137234811 897858975 848227314 824320169 673001125 424670493 439607916 856418100 843389486 906106588 96489108 88875139 485005897 823463440 347715481 801380252 969267357 840765136 846971180 137832753 702940564 253614415 124909399 265610229 191279307 375888577 179879958 984885993 891622304 297047385 955279309 580736014 43700355 221976317 546235536 107510976 790286639 455585883 926653777 896863564 296648467 81535137 860303825 413683413 604340919 836547180 772127192 140460112 470036753 255604524 911345132 287174137 355265963 217017598 526324099 431624610 549393944 689308144 368678123 121466101 974574841 669560561 805417237 42057316 986027799 157514911 688125909 463448853 115606949 659728461 407297595 861804263 387744330 151381661 319690004 617166619 656529498 293790773 846396259 781076563 620747690 528829526 716044401 788693102 158830513 304805040 47679774 270405754 275799655 511194600 957317350 238648418 421761605 465357538 306771784 112929446 70552478 700096383 990760360 262354384 5104047 78746246 345445640 16168106 407531441 968512090 500785462 976895492 818319530 282240800 474507150 745109334 729495849 31545420 577913224 104593775 673097984 878963923 367447996 322950381 384434566 178923377 979334233 643238461 816551705 850608351 979230540 95546969 57338309 544574676 938385006 557817599 608066645 318767664 255628263 888257664 203911385 583150603 481624082 218038915 160422284 149555421 689057669 161782391 493438682 154604305 667527782 377669265 823857290 568901458 775348217 109850322 675288836 263123248 834226541 136831558 676505433 126386773 433684192 937791180 491791435 573195330 953302444 354027844 820979437 256179034 637884956 549227692 559549114 49424214 538931907 247876258 289138042 471705119 702245070 965012007 120572527 125786883 278442329 390690386 870032058 514712376 484995529 531311653 377928005 407161735 379179215 910285280 239764525 149427793 2985570 541413846 391934542 105778156 737117316 398020507 187848227 791776666 897828943 24617406 244399696 538304804 21036318 604859156 142956467 227967082 661091238 932112921 564282875 120566311 804646780 146035974 403377266 790902790 677226973 616240278 215842084 464268121 590446539 460386662 888652150 536230419 17318061 644195155 886843750 793716491 955305801 648265180 571787478 86785011 637832469 397436759 872500843 391868954 771158707 16885741 374966204 573724842 850793914 637660408 205929420 868840891 893022677 345568278 494686617 8864433 786391100 435005143 330134387 18219417 717535847 317299800 432194908 953299889 940888331 731038099 919821903 294053950 287758662 724989221 163493357 833034812 810145978 252163401 124689354 202915800 927392299 445512324 633279063 129609172 912599694 785595490 133506502 746776834 447735969 461672391 612421224 644121376 7627966 777457707 441803716 534390707 240037908 888469603 155983196 483135265 8294451 589067175 643080126 46562377 712793491 846589953 964678638 580065732 829384647 268790944 264011517 284240971 786426465 647356434 789176844 753270308 128016278 752568976 250535189 386150901 226455730 327663349 209403223 998064706 787908190 942855472 44937132 901795573 502343490 504651515 46624506 360393147 643314131 464621294 604982551 194779557 254728179 144933392 282089195 291818906 961144193 364727273 421460700 49589098 573584052 572651361 312339496 830586848 217225931 569811052 141070119 312917864 792177178 585211593 152974067 707176422 293265129 975505388 526993 627593053 453803802 775997091 375859799 86915688 579130127 349125702 286375913 268429662 567408490 533028997 533116989 360138031 249134492 985172275 341812966 798929155 264771268 222724495 425106321 623382524 484817628 646267859 505771226 708417392 460729935 134170185 492139190 656582549 195801546 942560375 149601219 186332041 541703932 96755758 246176977 477523121 645069005 915887128 330244535 686742535 199538007 497918148 781295930 527209347 624129634 925240279 631331544 265475182 570602229 8965076 805793530 750374452 78447405 753343820 1389894 385768568 78269805 633607218 540956612 102810630 222290066 137074361 484039738 674092009 224975636 24219322 653587967 150712870 886748519 914148018 469259275 898981913 967559030 30933 674340143 601554515 843085259 208468787 278454803 932519962 747836274 590101715 606679977 85251111 854180096 360582325 299041848 600990201 48879564 494391661 984511849 150497561 214126175 769411898 918164165 441978837 297768423 989559884 317630670 168158389 568538196 467693150 587465511 564181285 917090166 610888457 144677432 64782915 781366060 579494683 297903888 257897495 132468757 596168413 764227855 773462075 904578771 718029319 683199190 358666493 523592335 732151935 597972545 15288076 437219098 627598390 926261186 171708661 8362829 931433489 98020286 388919461 884477655 196782603 455361770 527648537 20968317 688592473 322256639 612492657 551491054 29808734 872300679 376102627 59100037 41264452 949923200 984733659 855227931 53922661 98050605 727210761 513907749 400396995 57006064 209854531 509698400 224386000 931394515 828096190 729436073 247447877 790014353 177762139 166626372 257924240 429069848 704326621 431575778 427736805 465290701 752402236 259424074 474758026 326704138 682100294 648732203 711044142 724203806 187279826 827321382 178154525 200339315 722744275 990429835 193634037 167048100 504623472 664789574 553804136 655792625 870213532 709121720 555850594 466809495 616572126 473262322 805175192 125386994 258715668 837543511 71423521 286683450 592406220 666196496 294472524 972271806 530856258 716889856 249989913 688910992 743538233 805668383 10160928 814313440 268812299 942281664 863446317 960346656 817549804 361647291 318646318 139311153 622922078 195941728 769696478 791515407 315506781 225474108 586342639 210401399 129586718 100540518 851652404 568051866 637469997 698949433 566795039 550128329 288494162 275304022 143656094 115654351 57149623 562463247 483865026 976476771 39383986 362022183 718910223 602048448 208762371 802798000 552303987 540887221 682351142 189302662 963586555 974329620 527432375 956654718 443941140 670276498 396957521 733418104 877689345 829844902 922251825 584812646 837554382 860443998 30156533 942685215 962414542 115322675 786043712 510690169 700449652 44345253 36128921 22187345 613333914 132385134 10887693 459716654 70042400 708774305 656061116 645873312 133119183 756763460 331016502 248695407 94024420 584390209 213833959 764353523 143913767 471542526 31722562 421079055 138809764 847340172 771605049 372647779 982671243 935231631 893294573 430570487 912159723 922606972 863607268 230529410 738169674 850686990 715398000 419102459 609177511 590775253 886993809 269877707 607275921 435195442 452439350 402579302 928665577 560654921 543421674 204238166 328270630 931448756 861244592 199338680 8993345 434059448 262101610 9571346 135820061 351416804 228342379 82902591 849485686 518086390 467315872 126897450 473915098 32622946 363005686 309511167 118861959 37791048 240770904 353249086 988441349 344683197 858919692 801333111 652828421 599116263 398401293 771446153 970792005 583157651 828592810 132645542 726855785 709528230 77018024 903304142 941775824 725445725 687575494 236762879 507937907 177013291 886441187 159368998 343625094 758969740 997814107 285643371 780398674 581716339 315695056 827284723 327212112 311157243 684309994 461147690 475506706 605410024 73232288 680000364 543891150 534892701 440303317 428138448 831904514 168822690 256265743 141874315 755315962 933161444 31074870 292029702 431812320 156414852 850424233 647861915 449098449 730799732 440409898 168044498 299393920 909150277 885578318 136077433 320122507 960106713 810782591 320499035 278861723 826715522 816297070 970437918 931261938 527533447 939261000 528035583 679571189 547416278 434855017 567600738 41785475 559064541 187627415 677862505 287774602 34263551 646618693 610169287 812555126 490529054 466057180 269418096 562054398 116365141 934453324 312891873 379958533 612503845 298429699 648920703 524710468 376126360 209824594 46291428 502544004 898942456 784103902 942268214 22238695 921034004 461327235 977987563 114605559 77100771 301363227 826549660 828300914 952502624 358743871 184228200 637906187 34002531 901466699 560762631 40894022 791011251 284344119 302692254 795050393 79741866 361818225 427541886 188091011 462494114 524491211 891289390 149205863 901316751 938271773 408219810 415666875 116185972 756275147 130763864 956814435 981040525 132513020 142719621 165631328 793185881 731348563 825448503 3705151 259856989 275893250 917578804 805282705 561232208 574413044 943656256 997610641 465263304 47041179 31244651 319324667 637216050 779358047 22519453 334621260 470732397 422912063 421129851 629561122 963507517 540783724 697389282 820615428 447439840 704074164 517305425 437197390 965921976 59817319 726949591 25276737 225043517 858719172 39235017 345394774 671863721 811042939 78192980 113446060 244610480 834649313 287871634 27166972 217372237 643523382 221014156 968675120 543342648 865509974 643966216 329521428 694488056 516201215 205986555 840869060 256058199 12471027 441641719 444315756 28267970 270033636 716130074 855672250 706181696 470678005 822431670 533929424 344170729 698240794 904898850 36122876 629305143 645189571 962662710 515766315 807454832 605635897 835011850 437598959 426627296 881137974 563239835 442737457 933849906 766522349 208322716 939420822 947273731 88949105 696172747 83431970 278852754 542697129 23625476 602470061 573369990 866160961 656994823 775106165 964492950 200084322 313442259 776226045 868651921 983683585 427128099 69832931 844021240 724674838 319352355 415004701 553336284 766127816 342394719 709800441 712260955 240141927 391353970 503925410 740225525 985356364 226137902 31466802 432050340 309354267 730019350 118875473 680552796 659234492 41027452 398187932 681628818 752466501 424070709 892863279 204739584 486748319 854637131 221231736 842725009 246304016 556010782 434054995 267746349 723601994 638528728 33195903 766674333 797611526 503757855 760331791 701859850 126201512 3733452 460074032 171552590 110811883 469078331 135031945 986901857 834046592 483034722 936823329 461374455 858014183 396667240 474255776 974988173 801096291 766592879 42051715 992301602 14742480 69815779 895023376 461447201 218733204 865793043 420821716 520816217 921273369 499954190 77082364 396501404 203816534 225166282 417737936 692791104 93400880 316976217 100666536 639893888 183858429 663166624 920927045 637209293 393187487 492020918 869541133 537888066 765802572 567317407 949175276 171098511 522802169 185811946 613423645 153893420 87359670 860814499 177367485 377523455 748441983 140750522 51619446 772703811 51044356 168478271 193440024 123733428 808214919 848732089 775159151 997969201 691677388 302947226 444600825 856719636 462288747 113228794 217853546 912906782 178483182 860016609 883220401 524898376 916065936 866799019 829623483 454771070 101343355 412845612 509072401 364022677 244298384 504208123 459089839 978061830 824712569 448259196 253406254 338533050 228473688 320665842 304149016 963040398 101434634 712147 280892975 503970807 392567452 626911799 739168058 575563291 190479912 686544916 304970561 362037582 384583033 695733956 654516205 150168293 320710126 510399760 86622634 271922720 978635314 221604706 859421836 438350482 332781495 947109771 484603158 90009510 139936588 824621624 839759106 457325822 729076262 2599113 608603918 636181950 793152074 952842128 476907949 946720236 234246237 490942027 395307856 241219751 219702735 272599973 965625829 394372531 80409892 595256956 676148666 376419193 269667746 588613491 102341692 604029179 578475818 234239232 703073325 712983555 860634376 660393240 257599200 857469107 887890620 384072436 832578884 901964902 448624555 407794209 756924620 856345386 245396420 921199044 464393960 990040975 675342641 458970345 623252792 416174375 480220831 624958949 708642472 391109286 842787265 917099634 88818965 154013795 542616870 971639903 535960543 861936091 122684339 152419512 83040916 902665977 139154645 991191658 72545060 478291691 66787977 922874293 557963866 63273337 36143953 293888465 753799544 537617177 383071457 740797239 588915432 513498031 324359031 59404166 951747475 682747178 127604387 796053599 308176880 357335886 838825323 786216186 496275481 745033374 814055035 480743288 658418150 394671523 896160853 270294360 74635307 920673611 441218755 185778926 50610115 619579643 965961161 308102832 743574000 472707122 657660008 804486926 467452081 164976048 957470937 30444718 130944245 261024136 578253213 209650626 844780082 886242524 121787599 424449643 232796341 50990129 52638299 478670779 336599649 53775251 732183480 461119615 833776256 706033218 369568662 123485645 587359773 744572031 593300232 807593922 267457240 477308323 646342558 213075793 400398187 77296590 750737620 797803876 136720760 732969736 258633760 776308390 786663571 725184175 182669713 358888073 138592107 553901376 367840190 460701623 596029523 943937251 878098142 433367167 715418964 925666960 686730757 984303855 769924017 151229715 488097729 752041023 129249717 16563423 815356884 559655504 937429385 823837080 33994405 913126561 516766745 733845792 259555850 967258353 269038708 971873516 158355581 904494343 547789723 864119041 267998736 603766091 893636083 40472790 153769524 855198583 375461472 186006111 381289609 251685879 426397811 323773774 925137637 287100352 115487993 616088725 223738542 875388798 717595384 197706862 587256843 402435474 405075132 858652254 875657645 965573611 533595518 124439609 695429610 856434043 788075542 651580893 598564814 107062267 558482485 767652452 462251515 40602474 596257373 293986242 913210981 116528100 502871136 520096426 440052538 152804839 255295940 315994540 156190435 101828167 601699180 414298986 873529212 633431205 449437362 264144755 608510287 214703644 858371477 630511504 804116754 668149790 206815300 262476079 568041245 789335152 252737943 47807912 395488382 145159765 431016431 769588958 646626265 112484547 452697607 95660626 753791043 297345429 181636513 55108814 396041798 185875457 578647585 727012772 389081441 451675694 187359964 588579189 862634999 506590375 996754486 872520710 331287095 809582794 382753183 130646308 128094495 813359399 362908454 603708970 512439803 770993034 105305394 154043170 71887216 282106985 799748716 697413082 304600925 479103678 44713232 238623 927801141 829161268 274448113 89888048 165568231 163929936 409432635 634344370 388045837 174391182 261488859 454116017 705257432 550148010 49904285 274480489 409972971 274933596 447454500 737962217 744588851 545158583 458883978 402250034 692624942 895438380 632795492 386735796 308814247 464289457 28468819 626561202 259096985 86238080 800118874 669111922 861504996 744576052 500872395 634922044 852952746 652890800 355953093 846649071 459911716 902336861 798270553 235736518 869530757 527698706 788911502 883565944 496552715 813887661 335773122 38078187 517106487 159093738 539743856 225560293 690136392 643779366 254660997 385575697 183896308 934185439 515817498 566933504 590946207 230203121 594405350 178386274 936727694 592820467 998048736 288361927 535614280 545717506 263434530 597131521 550770123 23515526 340477624 379063824 183161118 647092569 900356879 933467386 5605428 881978256 787970598 877253208 593831922 938842681 204464302 129329702 868937440 131401313 446681532 476630034 304072114 386186717 537141543 210487842 884441431 305790823 890322121 114987722 175598150 831143003 994466989 11055942 880021437 407827825 868482475 302140790 829295925 883641590 360067757 947214566 835501574 292381173 244112321 435592595 812340963 614091217 959522146 654998403 633289639 828646357 372673833 688139314 625762425 586795193 433627256 934914900 145227079 732145750 210659160 491839416 934987193 741149050 917235872 857931416 177490797 355350209 362511258 583549657 582026644 681425280 257258103 691922355 881681 179213206 644991426 553748941 868770499 552024060 967079874 122015077 746859619 998857594 925958681 955726849 249506741 121223299 359174987 624221182 91797412 776789969 78227483 788521761 368869050 49884203 332840416 503840356 136329807 802786081 307501261 274807746 752824231 749317027 32233234 148579811 629285680 500444736 708335319 941315601 878235096 418231596 303048578 475178023 436317914 757726489 951198806 568022525 403976459 228017427 939192696 736451410 574048169 65830093 442268735 209217923 112259080 610996262 120977936 750264040 696393330 537167996 749174938 300668928 191497886 675731801 482616828 38543732 656803134 770301601 333184572 806469862 85053713 747779269 135517133 810008510 955263748 831652858 661226754 669341899 815742879 639317268 119085026 174396524 903499354 168769405 704557730 656275478 669618441 729452599 465278563 272536725 817745146 446907963 578241369 264725157 943368048 433784473 218102173 496595459 432795247 234733779 632117436 306300153 816286890 276235858 48372216 347530268 1617966 328841881 103920900 493222224 610957490 937466730 665070832 490765246 499534647 748672350 539915081 95557526 678916812 180341328 934472669 493288940 212217225 827216741 704524010 118319728 401502161 774821617 590788681 542817768 336348458 277094263 514485874 630886697 458715980 55553074 313322965 523286250 634812098 933169850 963083938 213261830 536263855 331837638 140181840 630477376 856727680 337652788 376621597 800187940 903834538 333203303 35030243 642570897 936831056 727755697 363387045 993090841 958262128 102544873 22212734 489388925 922446342 303375154 215174958 531571564 614395267 806213293 450852712 597268257 795850315 901890008 108393509 15543349 758135134 687518296 404849773 648674844 698602814 661496932 467198308 306003631 98253262 775278914 848350282 357402988 142500050 315632761 346463398 918918144 263944128 645450933 995602780 794347547 228617152 133796387 748695967 101017353 839430885 766028595 245203643 18271951 851109805 883035293 573509473 584151298 841143160 611647788 876131852 922837200 211969051 627151395 852023590 452493185 597142810 459244665 899709354 576765943 120686653 888856382 450484371 58557375 345370202 625162050 393434702 638172993 8231527 65073558 851709231 154145735 127556864 615878790 682459952 501782168 409332950 972944894 997170499 128166032 5230392 58990508 49829702 259189305 401799345 628542421 869655421 551952382 652493316 938328779 204033539 736798269 37986925 642602113 725350207 908179534 771447619 11152038 568650819 803943643 262204496 100974606 903913053 533308568 525966292 229099182 572395169 778147402 289260493 553675562 33967235 283851786 749205099 184400155 316645080 533024437 597831745 883688996 930919591 128299777 622667172 603373403 289786666 949589133 317359499 420186135 144279960 956031139 556695933 607033620 36249424 318160592 594855052 786099754 82826974 849643638 971844315 548899771 667883997 183021356 763117022 322845532 546948472 804704034 674922067 105675388 449625460 731366089 138572810 491960382 745681227 471822327 373008904 449725561 906990535 502680343 437950451 872593239 269444184 843168466 955160535 375090131 396344855 357870738 674782913 24405293 902888946 597471123 559381985 388159099 695710412 14729662 594363028 165524923 328879104 16529450 915575145 35385493 781602266 705083211 109112400 913792625 833604192 31105353 470681076 551269885 96520292 256813813 908238040 621626869 891679393 556871438 975895312 312781516 483389776 339389855 139935593 803643336 835217649 689723375 656360336 454798016 712662106 698861717 261336954 736788360 180912018 898854393 392111379 668241459 171768975 152097689 968384771 407443394 46936101 188919254 537491113 846960389 476651026 121145366 702093512 619545083 91678919 882239880 262635166 55880635 734297328 486083844 718129986 41665234 950343374 890177326 19098589 890298554 397880961 952038949 149240499 933916767 833752089 824329885 588057128 730547868 999623797 949251474 688502323 467607700 455692426 304682871 545174125 327399878 755200776 125288296 857039194 299279298 284418572 776710683 914127555 391462261 508680700 812123366 737699900 47848345 640930128 874144680 728575494 337141544 85071141 814838889 391933893 259830998 702481968 92568370 203057883 764579319 632628671 706240390 874229447 805548363 611280822 296109198 810900092 653832946 866814816 750289983 170313029 475475630 715244605 24442420 536032051 315913664 110569239 147702363 483515621 474844352 137302652 739881556 534102359 28618291 927000685 818666514 274697712 155017340 42490397 17627051 381712549 272050771 747811483 575233713 141999940 307580582 660029100 434196360 86894474 983659558 196290511 530001829 530007241 103968984 793199496 464837942 890386103 150126006 818185220 542503295 653691381 315343464 456401296 711276501 417493773 999056175 129803386 979864996 542744936 591170196 631305088 761739717 96644529 372989450 295201538 517865055 61192432 585929365 569804629 566993933 537771247 866211286 124810621 271139953 825482164 960790393 333624855 362528870 303932924 954182709 683562594 868650382 506583504 511137128 777863429 774060081 222107620 736960685 981153779 901754321 550812041 918417208 518010867 773050728 403579203 693732783 203795530 415759495 279862992 183545475 159277034 768405143 978178155 598745123 954718567 684067873 212551454 392383144 81532863 451676528 884137049 460763217 803069094 976444672 784326441 27794908 676027176 663013290 679033645 632296356 595240667 758737514 587794633 784910156 69693344 507131923 597586199 911525956 215313170 467006544 193167434 864432946 449228615 410379100 111160163 471638694 766526572 337713842 605127830 510679547 982023023 220836965 330200359 694549654 931669255 202479107 107924307 598461962 746673522 962157093 480547112 407606682 141403305 135962908 785856210 147615995 942699406 365154662 798314707 382291856 83601560 90534668 897787774 860638044 813415100 103136010 872322378 698655577 94364071 194905919 978463787 869996047 903768054 476386870 244853510 345406452 541843239 527455786 85184715 227825461 534474269 790816153 485004528 541092124 511774384 536305670 901347416 344442042 677478815 651579161 610123528 955270002 846854004 961162552 985639217 123663505 880969652 758641620 382983639 895250754 121522924 432843141 334403469 289192652 571676203 391535458 544094489 676347721 195058082 791299736 742476323 720761449 667739228 535424158 126887571 492988175 140614463 194833132 201012896 635826303 414268516 753847468 309540582 478618124 486903200 558230028 12200203 81647726 645940272 775065366 89348091 876297965 811224737 788255464 992462126 928834565 293748313 725311986 949902591 261888551 414848287 488284732 89459981 548303556 394635453 262095843 305469335 964513188 877371656 204936318 886887376 188368195 916420214 311025614 406874044 889273778 195016886 521786225 724653837 509792366 667578433 443054691 966010760 566008385 125128902 841681798 122481658 985410562 374171721 397253869 680391027 345827204 829481966 434244580 144221682 663776490 269397220 560583650 606645910 30180648 266768346 839074960 400460462 535258503 98698845 553314041 410674214 333708940 706611686 372803390 49591117 911906918 660964533 663826326 75101320 621702424 376547998 587414155 884696752 850084725 37661585 275363448 977541813 772589963 300431433 552393585 607836852 13088771 899492453 771595148 993351342 841082907 356211710 452763152 186474405 66896203 728360088 211101713 171477890 806404569 492547163 252284022 683615755 352407840 894734381 753286830 520397963 307369877 347610466 913807872 608445511 706385497 341592479 966703304 298882510 745097940 855985468 760788180 144312317 341954396 319882315 645383411 161780941 427198373 703641778 170233691 141849649 130242197 599467747 753420878 331356475 521632165 762063882 146649585 5632280 741607549 32354033 158195487 788162065 873882428 967951480 856301391 721344503 183825716 803311863 931785131 752944859 549722879 793950145 742213171 144167960 107531728 553353207 504329939 897295989 765534722 76161586 89508796 506084946 728869229 371071763 204797752 343628022 673247080 691207505 922687201 708502746 589411229 663930231 678245785 982622924 144878760 53210308 119110759 53085867 505453327 51340319 774310344 213985360 172488334 634458113 557376799 973574986 835892254 620629338 745912244 696097319 485605178 540243658 872194088 643456275 605436085 616287116 737597024 609106017 373730071 8217762 114643330 793445841 390107495 87824307 676808651 224995399 615682136 848845491 464784006 664355524 201469175 782726556 547045204 59739093 592205150 694334581 164724553 501849019 126102600 176299057 933801518 195015144 616896539 509570468 697766233 340702690 120574237 463140314 180630261 529244659 125264406 298435300 397949790 66483690 72836554 619839256 540769566 609891970 927745553 113507141 428052004 913959536 557440678 570038679 957459056 47802209 340373124 54546951 171470073 401089953 484864225 260420104 656022381 500319754 109242448 947779318 184079900 513907935 516709738 900321944 889819248 129275225 739233852 805415013 797338851 223683324 495891038 961467553 554510482 758246492 442242979 690994312 139185932 218669818 493578448 828660258 584996135 744504580 844247430 869980578 756760810 851751750 446032161 733939365 4488260 485500346 923553090 781365942 353401253 166449106 773670709 124612632 246355900 677144153 102936507 303703036 309924655 419665891 433420182 254397610 3810000 217344506 50888086 431689229 8830092 476812966 258919447 203521520 785336271 748555853 987662742 701275384 61199253 45060878 746901546 120217550 439502076 306989636 72207357 171046591 180656812 192156877 981383191 948609341 175876713 620710178 869148458 421841627 966664578 901966609 686049507 548373035 888888263 782753577 264349450 706263857 915601194 966803995 688982544 451677071 750270754 702738317 979999134 198886449 837326613 831390315 810509988 383947270 132896538 652957822 468098133 155931149 644594258 539928204 418390722 491494989 155037786 570100689 467547341 971464418 289893911 537474544 97031341 553600683 96638651 308769680 695397174 911096732 145932281 734981560 900433270 507472321 888187571 872635884 407564855 503151441 58291250 807997464 597283931 253962609 674867740 818960462 600138285 345705927 945512077 942230834 360942127 802870379 15307071 417268509 507081729 647615244 735495754 896528205 723147942 472367082 508942899 621948468 808972605 267145193 777591265 756695245 458953539 647899738 60874553 510284281 878334008 867677843 90012782 845830610 895496936 944441963 199168715 673023174 939402553 407357552 109504380 725920801 81080968 27700889 752095150 895134329 20969215 11484662 893954716 28401960 904346989 705051565 891201771 328571718 868666312 793249302 108815387 185129380 123433978 668108847 783229639 331481616 528094949 397315121 446480838 560501088 161401727 294442740 55295412 481216828 555729198 313336577 893324694 730979661 208737143 467013601 351360981 314922477 925990490 16338634 255660918 139878116 890675153 567431345 885883336 289946652 473201555 424484402 139801956 202974477 554456389 890001996 267037494 307162469 596514887 192316922 274262141 607270803 625337995 277986733 523579449 193570137 115573338 600332336 864357757 255374677 701985636 25675810 363246844 965964637 617065844 64309642 650115537 276893863 479873696 423115556 235965889 565935881 937054666 866173084 797094779 50990350 370381535 544562960 584369576 401630743 967238427 984462543 49809401 260042540 998032639 118612119 990127732 285261637 326729669 45222432 942252737 925483411 249782887 222026206 623283121 483499617 928968132 817428324 586136046 389268832 114845401 419566287 51289787 828828576 27941963 658559026 892860151 720300385 314701587 980471144 873126159 698271668 200443469 400794009 511393934 630267063 226628282 444324031 53267168 426579951 673698530 122195519 136066456 684924408 753633204 598638525 304346784 750945710 211013477 240797648 101261204 929254551 649844414 548450643 95111952 851367369 290145511 190752005 765780462 54444050 419315347 478571831 539878515 41374 814756172 190028475 20242671 508316825 844298031 921417017 791086168 59261487 145986348 498506721 519198667 654399311 637653305 850704393 183120115 537910968 878065335 880625851 159642804 856382351 254577127 300155719 433730412 948191527 665854708 627884375 131249668 478611550 786957517 361452158 214426441 963113449 379990242 469753308 236518176 946815706 908700468 470609411 69206775 149694116 410330016 216921158 815584950 577664942 216628402 50975237 767590470 409743913 153243405 231201686 682640871 773303587 48402567 42752848 532799141 670976442 481629258 835174647 651725329 492600326 416487987 787831831 686414074 433485550 265439505 753543716 462626919 42525738 827351119 750467330 702432619 215718653 323889085 475160970 642845751 922184568 427321831 899759432 23705607 622547455 445024936 808562295 659469219 123216926 475290554 674565383 467101154 986498194 927339269 932815226 10607000 640762567 183378882 814474157 897129195 223856599 928232060 111854538 185166184 322968933 989920218 788216805 461735336 934403472 561824532 743971911 978169328 763705235 478157280 714760517 758408022 129819792 950703539 360788633 495387161 516057584 572803007 990411241 668415728 125424350 153478491 265286027 978116535 927742152 903701002 955119865 835065650 86050687 170281599 30380760 60753397 163563743 87413635 51720826 102037822 490999739 600330361 128008957 885672074 289831807 233547411 362571694 843182567 984564832 532206945 753400537 29193613 747252454 538742939 396058862 494745913 576561625 688487920 207585998 366037287 960978592 986825979 814679530 732938957 79652064 116927942 421904639 973242884 197380909 158737280 544311750 807558861 929873102 315051969 957953999 186299649 566044887 276817933 486834048 626784218 383770864 683302759 440237360 412585909 459324666 172405094 41966216 441432106 775932705 868277871 907346002 32155344 538346721 251894608 329194566 631930050 428878966 274884693 224365371 812060553 629784162 186963350 23790180 554889842 727966647 162153876 517131571 12560001 1930308 67695879 12564911 337747294 822175326 375019325 498887945 669945947 100262011 702062602 983388754 625760140 122095991 657465275 954297688 250431888 631255225 325507209 924627386 54190628 114230066 198079917 89894637 777807830 987706633 469268639 685504921 57916759 544981578 120554363 653588402 265624024 881334448 227922624 78127429 599552293 117006652 789756834 567948225 346277530 938406199 554430473 228512446 805028933 304166724 660852322 352924431 979914288 875901766 65812213 31907322 261344767 470928701 519944426 49663846 439267125 820212944 894029304 533271074 741365870 785088310 557070480 385346722 921346722 908660605 136650190 802483911 239982637 501000777 611048185 665391233 308359675 662569838 138380283 838954996 471409475 845652301 417766522 709442787 540440752 240931570 570780549 474370058 305637768 747652492 385671900 897292355 292323777 224763784 177765359 688422767 353731628 987150337 679304081 208063140 530052293 485037602 448471544 915035064 210506334 137893111 472245473 223096286 215658689 27176720 285222879 84909926 647097743 287530025 390305499 442776272 873911959 609609654 257488779 933309511 901780414 252501337 909126255 180297995 208840380 410168972 918617881 621156921 942595999 224265894 804743875 582663759 237798888 559099172 144657283 168555401 258564651 425336640 454677917 96287020 781165812 896118012 938831860 946839733 578879058 598285140 683885282 357809904 828367300 941864944 46345711 441042542 786345349 3678993 108685603 453016717 735659753 489334372 72348774 475626615 780363126 993631790 61403807 869574247 80122027 974937494 256624529 773451950 958730754 434766202 625405902 395069888 392292616 35311361 976349302 567724647 920190993 619905179 705324292 607069455 802683260 713402171 420874947 326926116 228600495 27310412 513846783 731328313 651786015 171654700 335213458 809767960 478703796 813792805 663240121 732113528 38659808 360128170 752635950 135094439 282225573 604933471 459204735 145048748 654154065 914450989 908494704 157821176 987423589 88032061 357525123 9104633 740021651 459926783 679744924 716564234 894066133 161842880 580123660 761024777 428125945 48606416 629253537 420626400 284788960 876452212 4622560 370629295 759107289 749080259 918542234 672208633 850918807 849226209 800148180 927606097 909707606 16359708 377009627 9554883 83991863 689917487 761598030 615133622 974475173 471515558 771509107 447033436 245598818 635653863 502567896 269139000 514578684 925897044 780111043 650413630 311106766 493812862 43717506 529572348 80230740 370303715 230988964 776890208 121389569 386237314 460780337 22296611 488525186 503236772 57995437 437304482 78451868 160309044 77232185 385454342 340612811 94965185 936986671 657465049 462251987 869735938 667387482 11583692 896859966 616532999 365189383 608015287 870922884 811820144 13438388 337064470 944400471 685963477 763175363 501036826 259472049 564120224 84055481 959340992 786487045 689333769 225573054 564081054 123362490 257495353 17611777 994601790 608647573 735968949 609664744 249087238 950367100 852241465 350935514 406363923 861063809 548249367 225962587 585877035 796625692 802991315 299992966 432211633 85631738 826706634 945821228 998091955 869639354 605733026 582803635 106477660 47071114 225146751 382018103 938589656 519432656 96368631 803435929 991256424 18692525 409854755 131939471 279111966 867250868 549373582 605762422 950812619 550549768 508872841 215792742 435856815 19234538 746089975 724514810 715898484 854434053 854589617 56280816 232189609 440102860 596716696 207664398 298560739 435638886 889662310 503802028 599345969 534714904 304972024 90815524 602864352 108453667 248759818 843652630 740142648 603431586 920706529 283863508 90451253 721839352 518453676 467683263 73460952 332375961 942548904 538563864 378330214 768160397 483582624 269287803 601048679 297998145 148187943 266716237 88808188 20318687 550187719 681521201 412812089 356241113 886656020 641263634 468662725 671894821 812183657 927336503 361097665 169839475 658223472 859639991 659723544 798261910 242977902 460976879 260227585 179813332 262611393 557395 213578473 287698494 432377801 559546083 165623375 764719156 851566137 577505658 19079440 155048760 138516609 803844282 967010135 633325831 16731416 268612571 152718394 78258839 442993532 581713378 559625620 368173889 480425154 459552073 835385123 166262677 760172476 201270877 372638265 990643115 403196923 489368725 613057893 346566229 491758894 818119002 455449360 851197548 153487354 26426815 758300864 60991810 15806016 874162463 585055199 827533961 914317955 802363421 224992878 106571542 236340957 169715620 476359144 811948132 890593720 797599065 509970361 383503592 391500681 785904943 413079060 130217350 433479447 942208741 334778825 126429541 562846843 289141192 122428708 147063275 258450162 561524068 267782452 398757751 482717510 186252145 428497798 142827210 334629286 564356580 242689940 768092544 49705313 987082927 283757129 297066657 940247223 871044125 104481239 976651154 57541003 926662609 887201292 625098418 395612193 13696006 211003443 18878950 906743381 286946546 921970691 505219242 869990001 937313556 519021891 347904936 912401532 79654139 539453973 549035223 373730770 714364743 252149133 746716374 462744268 783066132 651219311 330493685 980525563 685766112 796180387 237953355 624516389 717152934 116277554 260324614 891051325 879123099 46020585 128999244 726903506 290167493 987907201 636377279 899479110 494507284 324497842 767193714 646671128 884252434 825066527 392191729 578862347 181984894 767517195 296575431 531645999 590886911 759220573 977216321 936065881 754105685 953613638 830476560 486326449 604807542 121739696 799827642 616519194 21548317 94515308 708946474 121823689 971326339 860544085 654474537 452577175 591513045 969771876 669393230 264740607 714722790 983700192 163479013 626405384 383242484 879308821 537882600 535514299 758510756 180890052 356561513 802334391 205365978 193270145 346240724 111573603 820220938 514835191 483793815 107256803 43553521 539184763 684038671 411450306 500880020 78236101 785223305 54266133 176299587 15802996 633348631 217863873 170420373 293834296 880796794 214437393 982070131 508372487 190927821 58942409 292837971 354183215 996039253 309943802 435490238 950803573 123246518 811035867 32713990 329371240 136797990 491508917 525144332 694721197 827272046 641630733 996948929 516801001 831098562 650795843 264690673 191183379 269757975 843469223 835545122 904253585 673809931 433793911 477043687 331182436 537750658 120324005 318480857 447432433 241259184 573653659 566732894 237298375 374527779 235845099 647765849 830427561 147384373 310137349 315044237 156662795 871159342 802253395 455580569 738453493 87192231 203591520 731310827 198057301 768457756 942457114 597876057 65967892 370927541 98958529 101091235 864479012 133571153 187826045 832802434 350781879 386373118 173307820 209549950 333410491 220931118 973716806 274370340 392419402 603162349 94906362 568582454 940419049 552172027 922300031 792651974 16622180 559826534 804505932 304286887 738673129 659346960 441624481 28563161 722566363 633920300 208867078 845069325 476245360 19877407 410187525 888774575 368140378 615639310 543343041 178524442 789216684 886520483 214251575 579762112 524566848 554503307 225660711 326971887 339899724 362738958 830504973 226085711 652444913 754881045 369893672 239478214 946470996 794890964 385706383 398769980 300403990 584019787 691616342 913060270 364937802 482596791 398762524 687687111 233441906 927508533 49251021 61767563 550070540 284475996 943599343 592411888 520458989 427795570 587624956 169598779 82067124 826151377 228627179 110515466 762675562 929372647 719014189 44561304 645897959 188034956 790790429 901365673 770114469 552204816 363664396 257171581 163892624 618916923 453217393 842554786 686768366 546387917 81808282 331416473 2187988 458169812 34733327 621134634 418337248 67841933 842343300 711351233 834123032 363033562 93138293 362634427 199955512 240383703 16435661 214533771 957504536 789728509 498099978 765251233 441336128 882082542 229585437 869802451 838100602 77965902 494730822 831027644 139223841 290012786 819548620 106744405 989074544 254052722 113024803 313009913 338041605 393985374 373254235 818061571 825331330 822916944 250195731 641351640 610632047 788665341 157924826 881922776 672358146 524501780 213321997 93074404 371557005 330598492 722878386 765960718 102218903 324673790 417425699 541467321 902426467 808287702 67136491 556419001 839069146 601733947 210044844 812144071 204512882 623058834 606519922 820172752 378843678 462829032 946155943 623847976 77025873 413284696 942250202 981477217 788412550 964675152 841310548 757016048 6603419 976532711 6090522 949239927 114529214 628703379 745707779 627306661 477098342 343488768 623852150 823251533 837168463 192345301 142248603 330294756 878600893 806781225 727159528 981463870 917612884 435625650 781374470 743780391 580194423 479658082 810819394 742115779 179247235 451353843 315395571 549980230 742057339 586208199 117433987 176418012 853985991 678180524 815354209 491644473 139631216 864121485 474717669 575435250 246072622 474852986 143970886 485971150 674547669 33498816 115683210 11470479 830607562 112427533 579373550 422615154 911956147 42313076 708631650 259301784 317210439 728303934 200423452 47823303 171518176 619781935 441852327 2166365 381374100 475295401 118376846 546586227 388120258 492914386 731269900 605701574 529513521 502262732 931578247 566953162 170937596 227545143 454534216 868159410 498205203 676332154 654619954 563957914 677129546 3993371 982770211 816404422 353675753 854388360 519643998 833457880 119420067 612115367 295203171 609984438 805143741 679914514 451048054 695487396 241123595 741483715 662958869 790905610 377453348 556179918 643007205 889639742 934168490 454854212 757358532 980380151 588539468 125739391 858409808 158322248 436441919 223320824 178050632 575593177 600407763 465040186 556870640 457394390 555189532 190773672 62057408 262397098 787792955 488609215 162102367 558374582 232140423 483037804 624569275 727588398 397815826 39482807 935496771 928610868 831505793 589496450 62370045 311828750 681518479 501106709 918023479 441851565 452422468 228348960 377360781 852504672 372975053 679440470 329709054 411360249 347880189 669793525 136163421 26650204 692357409 118293137 180658030 48077091 622101266 433641755 853561500 304298860 230250792 129865159 701921180 419460122 621214390 175381551 78476014 149542665 345525570 254222630 349161649 613206477 475879696 965395509 669068560 620189974 558660245 587792594 701747562 62874039 274614835 685557897 208125084 812013734 342959055 252094199 552759904 764135174 627113867 916003419 935360341 180601209 784228563 93099011 407836266 82431116 376328481 438642366 604367548 703409847 195611328 739053925 95621629 311339750 451499235 706673113 187367228 92028254 943267171 196385338 189129249 333895577 260071893 728412430 9292047 661409270 675857961 848307113 562001126 871495144 213491278 558365841 186333583 569688163 461219278 928933752 689773645 207721895 488603808 428630656 124896401 794625221 93222762 497612750 613672416 838230743 361913805 636781367 530744269 5478329 511386459 236249614 543848262 401201189 938104455 666374753 796638387 266163227 176484670 698516206 854158176 991810447 323563223 236109873 36781785 711684314 534090498 562709691 481588488 308766172 666997177 506135294 821131894 322187320 552898710 978185120 736650308 802007400 761116903 298768972 92187939 511181862 997928097 374424654 338647732 575002981 126288163 714168936 81997940 898690231 505802084 185473932 459096288 791090379 188699440 475734400 240218228 726435877 731121618 315061136 455756550 993634834 387448457 483833951 297904999 353918878 582132284 707904031 828146068 968271298 921338343 988542224 688117663 13955581 396506293 31494523 185867217 378928636 282275926 619121914 496382161 138078220 781731272 961939268 768309117 946361602 107180623 499682279 808542448 766391062 958658167 453140736 723862219 266104656 807810981 102920697 770635005 63995554 384449735 452525722 646832710 421326137 113626134 313268811 426247830 467306839 303495851 509311231 17224570 950147409 561917118 628566365 734984486 7396068 525883874 843341004 78522033 936887957 684259508 679648506 792237593 190645044 563779130 871566493 552759795 302064146 931154450 756466240 919659098 943721910 490829617 720696874 278448239 956996584 897617208 863316382 495621526 43103160 626947712 323680219 213591810 479852858 536243908 434409395 498400956 342254754 131737898 450325921 72278241 366332268 233407880 418553892 757141150 244899244 734072165 710102346 74040737 565803498 484575450 366309 28733067 911591477 771916983 964732599 582900585 357177764 44465245 490563541 455462082 46191274 937983627 158377612 576029012 209679381 885479659 766166496 962262006 209666690 240674136 607337622 815304533 365501432 685302367 792788600 720995849 867745474 839802969 486103751 691101657 108402392 230588351 595692972 344466743 26037669 722323173 552117528 385592026 314339197 245920411 671258839 597055441 194818717 638853146 3739950 875185358 827391553 85862734 61586350 321882096 661171648 581297403 406411238 94800982 931071072 247918051 606870804 152107443 693104374 56042972 590604970 512156815 494941099 833262614 717519598 702535808 552920821 70026124 593665303 889776945 416650366 36038115 940252269 701784847 946228125 796345186 461860187 33912503 197320849 853134270 407610092 486838551 772149045 22380986 205788363 819974459 492946481 850859548 66834549 747788981 376735092 746632734 942909702 521422550 955357565 406440325 861550391 193253402 298926681 161070255 51640566 682864187 377403011 829349756 819857385 176091667 276315355 182378250 318513768 244774536 310212997 202976390 866259993 214210239 219859763 605881711 580234322 844386901 363129 378455016 822120523 180879572 591246723 659213158 109387280 168804942 168720074 812138539 738292579 743862073 182755144 430528445 603548138 470549885 89950354 275596246 611854190 915265492 153417298 705404183 761894857 763669538 243549765 343797774 933913760 599759037 668511015 676871432 190785483 522221788 395067975 183439581 752826522 754730274 211152730 521131101 440771759 91536012 71710820 51293462 181305765 400762942 227704586 982146882 286974036 228139643 697127847 331511410 244746566 564206503 511347241 166313057 976655700 964234028 979835369 191389684 414912724 650154800 204038566 881613309 761580970 587959967 472819965 466459450 7604830 77685857 790393028 101532386 873860963 200216540 532578299 942915715 954005760 376401977 733584956 121987744 839482727 645772199 56613338 266896856 615363527 421596971 627550457 215473436 724102369 593919613 978423881 147388983 66715411 485785850 220735910 966482714 647385494 436536673 996889167 374920232 757387162 196226800 537544627 341071471 853568434 466884851 681523862 457784123 160266417 409500578 242716164 1612906 706841162 782486973 724774333 531070612 887723263 125814684 732743208 538750541 219090535 225280842 625533909 488922696 570573190 600741763 342671929 217631832 104306709 47944652 23335479 404571282 470285783 575704434 885027255 386992508 927800565 828729447 230463186 572934642 957257772 314897546 315261903 233883052 978888150 742703827 865762520 4274213 452353540 378791678 312516419 14241064 902630363 34239353 915239727 544449196 776206778 398540098 219594327 632463372 810912641 185540116 531875195 479909696 744123915 201563287 332567143 205771314 121560570 579490682 844582812 568076716 3448630 534358225 317812315 200999012 37991483 80574496 610973621 62506062 26649171 530564703 743187072 398934915 748084053 42173340 606971790 781061679 303284353 23540945 516077418 342054981 668947321 501417233 84784562 127098954 589010752 156393185 652221364 288210082 379047906 896637629 377799276 35411924 271817324 903754408 161147847 143186002 41142909 577357464 366830768 939553457 813717775 509932365 957048133 525147644 381609301 792888440 180439295 703306852 146029198 350285266 720546576 859606654 527489642 105581901 342637313 711731876 852812857 131759878 849669495 225982894 405649703 186318068 570091696 295995391 399834785 390249226 631883778 719325525 504087550 95803672 96179358 689173623 456793806 890389778 306732186 77093859 460675943 247661859 445525142 207259170 50908238 541532179 54309180 995374387 821281403 190515618 440421347 432603836 668168417 644456307 411745634 503790541 421109739 354038856 274593186 395668549 393401458 553274402 23552429 404427961 612954899 856090252 632420553 213022784 889904064 147402010 760992267 130179087 632735190 983354437 226824133 195534244 787934283 495075329 98143805 165237859 719619042 205960472 611585486 108943801 343779159 718243960 167085784 298047885 52224917 5162855 488848703 566057898 481917643 747353378 454592777 418921861 481351248 288123551 504613271 763034391 399135788 402422426 525802153 24099464 727057294 397679633 595146169 417229310 123076433 276737379 285737575 104361665 923088307 980833321 287537795 478754104 892012258 576848561 864390452 476216855 989505322 339555540 539563051 200789798 474795774 734935881 720483150 122985974 539493959 402938045 426428232 489841746 891838230 334534231 186860886 324485220 533020955 630246134 398357902 957351558 588531097 283999629 78738831 101692648 632969356 95090526 402006697 692563154 111041531 111351679 414294045 54068201 121511176 235317667 38304009 685986803 736567748 415627047 773875075 933371756 486117196 351430231 103185254 651784885 506804098 724922383 563610135 221493350 302694492 687491597 493128221 176865991 810403842 578359162 360220775 292524665 736211002 958139696 719021891 994961781 692837389 144237445 107640641 268232756 494298970 796690013 202397268 644989375 588603853 549605629 793575964 603272687 940618738 9178786 8700521 356528325 933933509 127628290 263424039 777682194 589054335 498620887 358707036 908548706 188927990 308261972 892752454 715844253 294043815 689113711 203483196 495259899 861251226 55199984 620714867 624506046 732946901 27424810 178665813 829680912 903287756 6072415 797232245 962340367 837668751 517023141 655805480 192175822 865640833 826313237 198142885 888967059 217451834 893039755 341081322 975777462 194864312 609239244 646626634 569652743 411242230 634388564 842687457 987058376 197929758 382061069 236520149 891950062 45843417 662290187 738816763 662735420 868999813 770187605 134448753 493145140 638064891 533273848 995981297 348764733 249409981 352136981 991884292 998087710 31594116 304768768 212680532 462024381 856295255 472965068 48444505 871671652 514243887 167295069 345919906 893729146 298958906 63708535 347398029 636984051 287909890 516417502 945917645 941410618 951076365 381688962 970216937 6310576 987628204 422828601 660633730 674373410 397921943 952121269 715070332 560621678 923454112 211628428 749822337 226725132 325877349 80476072 588297729 297846215 947377603 620586578 646553630 160388779 539263387 639100246 275259213 468175236 387585754 668311966 620086188 984923538 300502068 482234330 360475921 847734749 483288310 819717915 264873135 633247485 825474563 322992951 910926369 532193034 156754445 836922584 493004917 300371164 790091375 146643389 775354687 688757627 69284761 254401542 265510278 913203075 764877291 40466574 718739216 810817127 170540013 523910371 171396050 303142533 407627603 476230875 788886361 268048886 637084236 787946163 622110911 113420766 265081268 225563646 762325532 875688230 65318988 20219628 919463913 316318233 887523665 719951699 834800747 341541113 299824774 301824152 417807917 846225289 737053054 145187229 645287104 685022619 949226964 808998459 337181297 930641280 43511020 512837312 38630670 509830073 645394292 569200074 885482809 475265383 107971239 638929634 660574495 872981100 502600672 381860825 706240820 4776234 432165784 738476125 53781853 711178545 818795839 81638714 504550678 482004201 474858675 845809500 135985694 658680404 775924323 725382058 602055567 182549157 495297643 26480271 400127251 712704060 100476229 361262684 252630653 727959223 249347381 902928383 749722419 884075748 963453397 477655130 197997123 545862930 776480218 21161397 395300623 132641011 245162006 55774977 415098723 910918969 566010218 647492858 457831500 281662276 901903900 847485616 822030319 794070859 377216576 422927895 608287792 1307994 415402859 316992130 440174811 834565614 514484939 641372037 820291787 610383853 741010945 852132490 428022911 639955130 816973613 522106630 243527386 852463299 223924334 381718193 873708232 823936846 885837012 814775240 669343615 743995952 62569049 841877145 94461823 572469552 11266390 237527428 6536925 941895649 641192934 734906344 527123221 945043543 275177251 419310101 166331120 254071508 247238155 634347543 958551215 453577226 528115923 145165050 194624000 390952788 484779876 930895700 302075838 630214033 380156759 889228958 464240083 878641702 433304629 767944808 559212417 79065140 521096106 963362299 250756299 848345678 256277211 970792551 49031755 703036360 681550441 170132583 533486857 577541677 666366487 155542839 924990603 990924449 130269651 571578169 381115074 875942165 143838853 202705 237110766 913925365 963728266 452752555 139504397 108593938 479150545 65236745 34015993 634919829 281266690 652436819 721130841 970530370 282776616 621175807 182650403 524169476 750758589 223174212 3147816 198298426 392254904 60396887 588400191 957161049 834328951 999488741 44568666 423837520 480578387 267351617 341551810 236318469 558319957 19740317 737220753 121570929 799363960 530371500 552100082 564066317 754830648 11650603 801973071 683316680 620054435 733665385 126890812 573972057 172398248 119915115 468932186 263902430 539327768 74530748 978743585 599706301 316256894 43490460 87946194 626195766 880743063 41466793 842502418 613780052 525534555 389446098 173178699 751841507 482961055 756197774 323754793 981560403 68790739 964423673 408507836 448863556 82079085 40205186 107482045 715472820 828451807 734186118 652729037 849425626 482950671 87376604 453048849 19404248 262735541 109576383 909357781 535821845 864217279 71018798 672729628 922967478 556140446 713291640 980219007 625965001 249500585 280022836 315757362 123108239 462346035 856824793 309324730 880637070 51463928 305132218 2581319 132228935 768437955 768413550 758376368 571433508 145661267 818090457 872190435 741193861 469705571 464272284 938397955 750224760 56550319 660778608 942794923 687744865 771195339 657962523 439106118 835273963 644695073 674964183 30192859 742613875 510984258 546039182 411073617 778328044 553932779 251991575 320089295 100672345 22702879 852771008 950866532 463480285 613717435 279287688 594424438 31883456 906877687 374893606 245345812 414996394 29158972 431589680 982814842 512198657 308673577 434194713 95353032 140893986 913469974 163866820 642485224 311106645 552863560 687303768 34356092 7951968 739184503 56709025 192419329 133674024 579740264 725524956 778670522 443468363 784147068 129077494 877928424 616741649 103757748 211559895 777307230 205218535 500674594 866189974 789383681 860766324 675351595 406083453 717562053 478675088 185718164 486899235 208200094 540764451 113314818 154235301 207202007 285750813 294224667 640730992 446293233 511034096 157672017 307934345 724328450 930248143 174684610 552534451 638019698 762392363 589730943 34805156 630999763 699321135 209829996 620383182 428203780 698868901 292025479 516899875 630969233 848262403 877968700 675862574 594392646 894685424 203484420 981580015 890485356 60428672 956095426 706037474 136135682 400932608 4152421 276021021 23234549 474914778 230521876 146261859 866683275 845939923 102855283 580351835 390949108 620499707 308546561 260354570 853129582 311111053 191147025 426420666 930324456 118261580 529627798 609272966 312380553 108335054 985378158 141747412 269866148 534795550 401325577 363380978 271950739 153099731 215190705 193083687 131849669 740401244 262644862 471775789 662331512 569140192 971849193 876537865 444023741 686776992 486432486 798411966 97393553 282408259 294741462 910399775 715365748 666065799 300903592 700884151 142664849 756957645 230773579 733153430 625468506 885657369 508562357 576904633 290568284 315756290 174592804 54621662 288765658 868943212 571394644 371201743 337345523 766818139 40477937 801750886 967728484 187522858 653926479 415915452 565262908 261328243 215580523 43591849 105751961 554792201 313691789 656072787 262153194 451896049 934215189 312490194 498744066 440663426 868111209 982142482 494589855 281228347 356679161 760774618 511314001 560191562 738230647 254145269 688443431 877829491 280428059 119563638 670407126 197250586 386784988 884545108 10044086 452114041 167350491 714727563 276297686 197134051 621058845 724237451 441752959 111421209 926690940 117246945 505938352 325854663 649520215 972201994 314549534 968942982 295105601 499880162 548492842 52364473 653806788 438085922 916836155 87662857 307068282 150235471 177858234 693887070 25752389 604215175 67484843 748554686 55682629 110217756 709291009 460143179 86160416 151172871 840447725 239895923 192969114 552738372 33606815 478621088 346252430 904669667 971647431 737902561 630684834 306003698 362241023 764344381 670751768 118085365 751758280 631647850 809728167 573561007 963138990 854318763 806037611 639999952 285420582 235466773 635634826 519971384 204086144 849620058 107414295 358223792 434842835 906386647 197951937 285133439 315508616 201459072 825605685 776070208 174947384 138537826 642901972 198972083 998800371 541761701 699995977 647352892 158831988 403962734 553859746 968875412 405058220 459830566 157941553 252789883 605198948 149739944 712693335 207069205 641387609 121809216 149356408 602006532 731462237 644795096 848018641 868132260 414670119 627794090 593230610 435001478 735656854 52145356 830613988 408732036 272383064 18681917 286745539 703943354 128345168 777236713 725040086 709726761 338004228 973672879 330587752 228491773 429976909 476107798 839239520 520340990 433972193 743100277 372463928 420724586 180894808 309951961 260009299 979849432 899733878 771668025 327016770 48449864 253421528 822229880 893645045 292178793 865859907 122182109 873616641 455321768 226436506 300425995 863491535 55255236 688885912 438822827 587655780 178851594 441560094 762495416 686628203 870001577 26649157 520900405 95362690 846268898 675281811 125550874 821011242 72473193 749445757 257092655 372630528 978532988 497149141 639144789 595913950 201776198 687528213 246276982 364797416 351971586 441508552 407413256 374040788 426558688 565659455 129049329 972689670 233497638 283017273 138750794 666171370 726961216 814523128 851329698 641390384 446425273 227004811 977566706 18629008 238591450 880787120 263458423 542852256 65278758 994019373 856203622 584366396 278748040 955656437 632072126 480603500 454394689 283519020 89114960 263112904 583391424 865991627 376001914 116832478 810878337 421292488 872777869 783479139 948011511 344786965 688760266 887065129 195690985 648974095 512309244 201142753 997497765 670951373 660812487 8310253 958796082 528296717 656979652 565355974 30090280 565965813 652873282 807330102 398315090 698836402 919412796 603242274 659029958 492511677 546556159 594897283 807156902 526687723 609988605 236913672 653324851 715410482 548151277 792272893 506774675 76836664 480364481 812509249 968084977 325741778 129850569 70176095 698089049 343304835 717721017 275289493 164716885 99812745 606933247 769224013 405602772 927977583 843101872 477164864 13463001 139456914 693080218 655865301 673300492 585524830 817261386 22596893 756259956 669988386 684209967 74038641 506170697 274390060 58236670 991490810 83817598 340834056 993948530 679071514 786396846 885869511 955880889 368679786 339672065 559833864 641679561 867390754 863528592 100322463 59117228 374806426 975217252 86445404 775890256 508574472 36061076 440249369 271783566 527567167 933175173 833615461 983162260 57420841 90707762 420863091 320941270 486792022 116993555 288025545 843716366 11517499 204689997 890318652 270739619 562045783 252291515 972894431 84085507 132782115 682136123 610954638 841824238 387393070 729414377 682482501 496147079 460240280 380245982 20464855 658395027 683262751 384976310 344055937 147581218 36889063 780999529 269548857 259361084 755337160 727220602 363048179 206173749 810266632 212465671 965668448 171811579 910060346 47446911 223346531 238252050 488936900 343144857 488211605 945879921 141501035 250806516 831425007 864263267 875800983 214306073 453771702 560197357 447187776 28049325 104858122 252575937 797943384 638947900 745702655 400911673 339604484 477084826 12276945 988680271 545371555 541300682 308073639 684235254 794293349 851461572 210945944 684154348 555332495 25261093 12703256 886065663 701601302 27971607 260608684 710711977 577500543 300311422 869843568 909284832 597326530 354137608 282879888 987227832 96228552 212488202 613749414 744601722 384134764 349609817 825925449 49131202 46009260 623946373 967259103 13060296 434987531 179719168 596579081 368116545 765421343 712741962 686671290 129581533 377274608 329397813 191277830 934294156 545102895 321804739 664039127 459090887 158461539 649003646 187009954 514350222 851883584 565552489 960748810 635034961 766706563 906680726 558922254 521548619 702690984 731661625 46749366 700598598 312389034 152179385 685873630 481327205 770462892 915214879 757475160 477393012 859532297 432451337 570888413 446638420 928658317 885574971 417166867 474589828 873384489 80515913 124482003 357826593 59655252 565641926 358258963 989237264 848423465 251531980 949336902 221569047 549475865 704525512 690734871 653952846 283228135 360829896 223439128 732462540 730434940 503595383 139890908 970201560 726884700 483709818 856112217 275757043 69776852 584636461 457951133 457866019 382863304 192201415 711097733 209292458 455757240 200742838 205635098 967128920 881486573 762186968 110061017 914665307 86534137 139778683 683415848 150499330 971650533 15415016 696703565 97913394 954437738 555036749 303361490 942596186 471222688 234731137 430743552 433596052 682922948 751616812 457155879 288986727 311949536 204803634 324188605 748571307 198282325 176063823 906503011 559995722 315317905 394249779 194892639 597915354 373925601 744474205 820287527 513844888 837618621 316246431 243178910 805624959 264770726 749070145 587724551 989732622 300916761 178022243 967034883 636434330 626818939 573826999 203149928 367802816 598296813 159724849 409021284 680100315 330194934 735967808 346022080 195407469 198900213 342830461 747972603 374577274 601729618 332401721 71990646 634695012 595865818 913990933 271566060 271698659 121970111 167436715 993602648 773453275 766836321 2348489 672823274 406082721 829673498 999131116 919355841 532187914 511532721 521035622 773117921 801107482 458001045 293467874 2544021 948754137 64392902 526332398 564728852 137546660 457828775 400573022 152354602 542882118 621707862 287748255 850446528 392731011 987042202 469025324 421674941 741210742 340208812 888107917 18941260 472020739 389270485 951918374 172903700 117292840 405932231 269557326 821702762 624779896 51642140 445216707 861153719 275704038 270309725 693242162 206328521 426640069 28670907 32775328 225716939 936865486 799512453 22202985 845611731 594569237 519084084 821230886 12222775 178546949 976327416 183747412 742520004 180877584 580214412 898653586 400990939 909831549 22368987 522111022 99937408 114599338 468533411 24242062 648981207 106801923 445237007 517777823 212697907 87110277 21828645 926853290 182266946 189161818 594088050 330267079 245727026 431600399 482481496 520837549 585262964 327193136 501065947 437917681 926879830 400637409 39204356 934542993 134803126 177110885 746214272 644791569 191481798 159002676 637605450 462551579 965429766 806743848 327731433 76430493 590734453 852526795 298902692 633096421 840481379 612717211 705875211 439359619 46606627 810299976 108788382 921951190 341772789 529000670 845700757 801838226 457087659 664989078 550250327 208848132 202970675 888192304 522384714 748412246 332454025 192075638 40527234 466122540 992383693 325092142 309332856 415762724 323636689 186252872 359320469 503593199 382689241 679063354 852960609 359939328 822173568 366049971 145632029 355585323 627883589 87136524 682792945 516362022 192465041 269316185 867901276 698470920 238075016 826500946 342042850 966579587 278219224 308939131 502598094 790692973 813339005 842395894 250863282 66799761 930503963 209428450 626755510 421897243 914903428 383097822 131088229 349832729 330974034 123395685 95082352 62526240 390405441 432204304 594692448 933395432 764644733 319229459 495814650 714033297 529340359 135533189 538714524 70985010 791699697 371541992 799667724 110343864 111240044 168666518 629645274 298710069 280839606 709300457 29972025 161707559 741224523 931301072 176712626 361470405 102485885 322551667 354563314 851621345 606605862 566061879 135573182 134646279 713275859 174067454 610004641 608891847 347303792 256887610 999678607 500506644 568995224 736713382 785464223 543178538 211437908 317144686 248500182 970728439 917576682 931614575 220619961 150369197 167373305 327107041 476770756 300447921 983611470 698419568 348526221 50891281 966860999 117034978 850256530 948957931 175318542 655264101 73384628 24142445 289106302 648116075 176492196 392317319 22518138 587048023 35250618 780442310 571587340 531239456 711942728 226363112 283561864 374967886 970330503 708934179 640794738 764724954 10185625 696433668 940642645 616842628 778955987 791713832 932768312 869854135 973580073 31251954 638572891 653792435 826067140 305992926 169793675 895520962 753963671 841530235 639952154 971218826 529991400 450534798 196791266 636567543 319641914 103580365 913071813 842022146 825745789 87824886 41199082 643042471 287803008 243229732 530936792 637858009 945444189 233273706 538732353 62459798 728741626 466606025 902616899 484859595 53411263 570813670 96696029 545854945 269961179 106896522 890265978 443472420 42597739 157805876 45188146 631995336 933716477 750765892 215683525 203580767 736543395 31513771 60312551 433355427 320022491 703225563 915085681 679002705 378131354 368344105 921677031 847814887 744461720 383709740 218745044 783345960 384941151 352518332 405036274 829840547 564945165 289976210 194187151 768737593 348880487 124228809 787300792 499367371 843211015 720180111 670765624 985837647 847213170 161789063 64413569 627169909 886798266 980699354 132607178 193753043 380612716 703608346 792560560 555785345 465410973 438008300 72331849 696697797 996303188 795273398 702317986 83253494 345237284 753159885 646195803 92313720 487642647 807134020 874843495 954348839 970135685 467135207 370427222 534097005 619680689 753594732 204242692 950101443 705266882 773795560 331192621 52928629 558014601 364929528 990159609 254564754 84297487 834220034 387779789 531934732 933039542 417907396 677630576 767315607 377499518 518498463 484431971 870131442 190538675 513684036 393304374 283325650 224429267 963480023 805365432 916681829 229108768 342329384 152856549 920827347 876292777 358070314 342584148 910806543 878892518 942617581 199666394 791981411 365944428 447006425 866629385 801709310 625967824 367665423 381488531 406384485 286811990 655687829 517287479 807206515 346782046 51568290 293453229 229330921 256956790 306732903 997094491 580318589 850131206 528730713 916817762 546547624 555756550 371085812 643554437 856725797 639355685 179394575 88060441 608182941 84875781 46270034 307307929 987062026 565222495 395509428 74562284 660595557 496093517 211903675 723442394 62132569 280626041 59913395 602657486 14542158 596776315 143640157 805658917 470368524 626487644 784032535 159015028 505307892 294671337 678959121 826361296 16483124 646962253 73061905 684849392 988533966 111272279 956942145 212244022 55971750 81676392 653742117 115609209 522427798 882543797 218026726 442405557 34093573 875675795 872860948 441581148 969569052 588049500 829618263 827951961 21075560 224749832 293682806 403875604 287553435 242092363 704823629 812391480 663763758 632890378 726948020 479973872 914143836 146356218 798734679 703065711 45458277 14525905 993870495 1866197 49959438 638933456 572666599 859042106 40922174 980765256 504888581 536381001 997000636 136017840 236173990 528759324 760374770 999765743 521323395 425857961 682151563 547727163 496375590 431637360 848980440 219036937 459119721 930576868 32198244 155742614 280591683 958647840 441914142 593952800 516251335 811826078 954708746 262046070 725296179 375089112 268036474 738966016 878837616 892947562 847732662 823008683 209994526 646100922 994819465 515416096 973440760 776242944 509203973 725532034 70481169 89071603 666531579 507539653 902945222 943814480 6397457 327065006 491355528 820823727 674435603 876258798 511451868 344655568 640034285 235032718 183631783 79572858 663168037 443071071 843565362 526220952 523715897 888820952 269743954 350175271 216966381 863984860 463865441 305669935 457864748 110946319 410603142 58970715 53098235 121883973 472353912 421093144 233698858 992358716 490993381 881650757 122876723 476362709 478610828 534788440 29242137 503858177 633539400 456935573 583028185 700101190 22671474 517646241 251868472 934253604 6965149 49550842 789825263 425922892 741211889 708074380 807841195 813684030 387302454 193674135 74277754 149187273 542557132 79807837 775874009 521131275 977189537 322792465 31724892 880966092 434218023 156817388 773052866 911906066 741374678 701776445 431414623 81467414 767536585 698419558 728825078 195167754 481020949 606403519 824533563 412684299 671008413 237603358 648840122 613048957 840983586 377803507 162300723 198176557 191304922 917525139 523903980 399881344 25003326 236319756 880798735 523674683 471065923 84082421 861111352 727237389 302241726 429826361 79767459 935903787 867971518 595715426 319300366 221558676 736177543 123408474 779056266 43357325 128487003 231170942 207514184 95858665 667116018 697581603 451525723 241491928 478952949 288251147 60598469 160978486 133758462 412161180 393878970 540688105 270389270 606916360 391778937 683740652 629336504 794099613 383837420 73583037 777185321 549809226 30526736 300748426 424186607 992294269 314417256 6660257 244387313 358198215 403033479 778771152 478877916 136106548 702220970 523583757 715485176 848417180 747024297 452289289 903438853 262471720 807548369 630826590 209730103 623111387 783910544 713848650 938640838 606867742 124422737 832495331 629826371 814922975 126384276 247535627 603007186 400977812 77018472 636343132 761099356 831968902 450736398 500560079 670345805 827917155 97051995 50828083 667002691 106419679 473625271 539144464 719240902 577057445 161082787 552292430 620183250 594036471 881817996 874101632 151726050 512378459 128840504 71915981 660401879 766923228 291317168 239514790 485327909 27049269 620178540 71703635 794370861 505768973 663806837 715831023 285210476 726412730 704558974 740389581 709864934 255833524 245295485 967330891 622151200 90093867 678589306 655854520 725812336 210026215 653203430 535846909 424944922 769712113 941443914 936611343 426806859 966559548 874483749 409328170 966766866 751137044 994010258 601145047 992221311 419505477 22487545 507258325 238937752 290553881 76899374 318522072 651073256 870114746 75460346 239856044 86594779 899617840 827184301 737870216 455596306 596229004 814109924 227123618 184611412 674307759 540180114 607397029 244810775 311047247 366661927 960388257 356510537 126803121 635950071 484837978 198230712 845374977 946907122 424269543 539227038 331948757 12297302 789427845 900076057 653719277 221906052 6498075 821735838 918790971 555778711 217790847 500691550 765350993 863928126 203542882 241817285 667208593 290720166 837849534 711178503 624359845 188211348 604206073 113572304 539578984 199946646 778365039 106424996 252920212 44337848 995396883 868748988 738074101 196515417 440398098 735019845 961704572 32013724 466965453 309782555 265505906 933482524 940544754 744519363 197051252 713176060 526085727 947813905 4918916 758273246 195473802 445905352 805609988 459017632 369361895 389685045 511081069 943732045 31690289 138181800 661589554 954697342 804070384 75987612 877639321 884572262 813406013 519077403 380527410 360231355 265298905 479836878 651282450 959938726 335422854 65630915 211312772 53078036 544408122 303856270 744038187 181833898 776313708 746434254 42149081 616762635 961418958 936549335 17501175 248565805 417924567 486411709 292996619 835018588 977593234 731171179 253103527 842659039 648397807 250244233 711327874 456123650 845054864 344349126 637938022 959491835 842873730 608561885 616492118 625823919 252282674 19220049 236013701 906872454 441094784 107932991 745101489 712924901 927287843 19224353 993666102 108789105 538278695 549963769 86922933 948284386 197996576 341708311 908081462 456769794 812013026 248768394 293787023 262971370 113599074 550379666 393655299 667787621 574285870 585531779 915680612 347846023 870291865 204939895 816544529 699820783 174665084 639790163 147200008 474744484 409798428 792344912 902744705 229104718 936583815 890064453 670646570 297781232 395371588 864014176 45446676 277719951 516605231 844451580 964911494 260845907 87245152 892887580 70744005 619905271 714018774 715944525 89385689 594065484 47600544 34387431 651621628 968985220 771952266 975986462 281632059 745824211 625730641 169118221 517337665 274588800 187789181 631961074 892713954 203094555 379447098 447966304 229324883 897431666 622589437 619344142 418418520 687065518 397965357 511845535 878627434 725693663 763382703 226536938 36286441 190531976 939222126 143992321 755033027 541855107 621045694 249482603 917121379 817890702 121759723 612797469 510715247 565673429 924241578 774179211 355232307 362014734 137897813 993106217 718406828 34400732 279201976 12372705 940371022 755089676 311873779 396612648 819588716 619590735 403143457 354447857 463793051 483138981 535393207 852148873 902368199 17697667 819633794 576456206 705096307 96645614 7548958 111485128 939691350 512138910 925242485 947713282 156806086 342188077 857107720 405504153 902720787 235621180 738529370 292328847 448827345 661369215 506645438 593836297 9496369 891927127 787096681 831864141 764819703 698341197 920780102 987300056 958238219 436605610 383555258 532537995 268941701 275162365 586518676 438334269 910781212 19410242 617522899 200312733 404476840 207157543 483816397 887718312 685632245 904715619 405919827 236433988 863082669 372334009 553559205 591614773 22071043 66728911 47531440 279820794 559871848 269023201 276796623 595206287 147423238 418187048 19903033 605080894 726717468 236774626 899293137 704243184 129891713 5784029 534734587 714865280 608319902 740650180 296978720 735399753 657006153 942286210 773879502 198852433 982934603 250588790 758105662 704493501 177791041 586883331 949388123 428812068 235678440 608260379 248358142 334179897 163372690 663173195 443241528 756139533 793253624 566115741 21027264 490652736 618245789 584192337 345720285 805781060 746981442 195749332 715426933 933313893 419802115 859449884 853455046 647640775 118914509 727398315 555222890 380909227 70017204 82309847 520239366 547428731 774725330 936857476 322482028 800872726 858439541 415345807 306749587 379110655 525679804 981072095 482125918 283976121 710424698 79333698 304935414 249261498 978338284 232403251 222663701 246122305 649923961 53427913 841369119 402942333 870164594 339651276 549258475 547932864 319051514 273836741 381328642 669178001 800165535 703996337 550239895 92962798 759752255 711447537 552487599 366063364 379257057 305149298 667993956 167461795 93357995 496858683 572331341 712312271 932052247 655438909 353082738 793639099 63964642 770263111 226882207 444225959 758716333 407583212 353673304 925403167 159011324 662587009 352468442 785151096 167128917 183631870 318270480 453612867 100084264 294096550 96063177 740934505 957085199 992722376 560569926 677898446 142110765 480574527 51021768 261588745 42146108 146443038 262483127 924001166 91661333 332805229 178149974 298485438 344043092 12762379 95510326 576479212 680555990 493090393 110837663 618946098 879638519 68759942 730828862 239037563 865508233 165488847 848146285 329672952 595961591 814817941 796797901 931266151 113603074 678913400 617522792 43783991 878789433 866736140 884201151 104096503 505539930 415623469 537898147 731039424 841684109 752705040 168928245 835851973 376569945 884542449 535169057 933432903 970164914 887360562 941973575 77851138 395506368 733075434 184058557 605833162 978796585 57360806 70335352 697095128 622107193 809372333 338744750 389134068 2549377 441712705 801516856 846570710 635675605 179997435 817517461 996524631 925558442 160518295 880495910 684054223 135104863 809576216 411356115 813711472 791194114 787653830 51699859 695077048 100017249 549047107 599456966 167922639 997364959 74067948 810212096 961753211 200671096 916558283 454184625 176954667 533263997 543581165 270586349 371236544 96459143 585063457 972455871 725744259 843443216 274263871 46925194 774879459 511250647 610426598 296816443 454604076 556903180 251497053 281634547 259681825 620289865 985011390 230654647 246364377 298436186 187328387 176525481 709245810 648675872 431544945 35567508 643252430 655790028 161281083 285789415 218622740 89617998 332935691 949810941 427125844 267059171 876019441 741193985 222088549 70440969 597062790 461327114 702835010 102714859 870728459 252026861 139533928 110820071 135700642 851297224 834693693 488870581 865764421 33796557 957896618 564236722 334279083 634121112 52288047 916170217 423180976 357746911 172624560 970271865 142047924 772973777 52726150 607759932 634951396 372331882 31259085 447323791 490547315 168803689 228722231 509184715 518628572 561803624 262865281 383061327 634453784 972373501 990038461 623144637 119977500 350431553 522151989 626486649 616013566 406928273 870543303 622924421 507772855 466731815 431141215 249521321 590193017 436781405 539661565 531864068 619882813 851452494 577265843 415984291 729201805 287283414 783747111 487121164 208889597 184669993 934865085 917228265 526386700 69064371 462793978 120053840 429042690 524213194 463748384 720004140 452030924 824133849 28026759 206477388 443881705 704607542 383779487 553838736 365943226 439772038 104405807 184121433 646470181 552936682 229155536 660914628 258715209 39803748 788457264 533584865 659511917 41567555 477611253 157675079 318513621 780980093 990514611 399466624 114460631 993283051 605533347 637958714 929930435 118543880 447847583 594479711 54426827 952858448 354498342 792722655 852015094 151060799 192500788 758431083 922602084 446488943 21348464 730055340 729221698 168128007 847520444 763637245 737502046 768631199 366603751 37400925 665970231 360305152 346115932 806107332 521985295 242515425 536070259 556381035 517131678 230645676 243298680 580148833 275049865 895090305 458277262 25724942 900975303 209656404 83976781 813231571 999701476 994092619 156339019 716892955 320781497 57939626 561280726 814034290 401835137 9169287 380142703 878686779 227476282 188528422 142400781 13471931 995628274 904164627 856846790 716059160 352230302 796413777 445325385 798821235 413580273 530316890 792160283 881186074 115517706 610695788 62100513 792396059 186931380 512027843 860653414 76038813 209437316 70031856 446211028 77244648 629958068 906014080 22571157 818744629 432492796 416238620 805039451 523828750 539566214 661772667 107431570 627758371 277611410 432606477 934528651 739505992 577689401 237231343 494706742 689364263 114004803 239297739 98484389 365125089 274801018 56251813 554093403 60192220 745900917 983364898 910683835 313601849 646383165 954347903 17982605 26321895 971603987 519351148 620839203 195721845 718405573 499554224 585586725 544490201 150169889 628706974 846180238 505624879 971035214 363227738 599197781 280634601 967513803 826754486 862499566 252591692 984816917 612683115 568597175 440872478 786440521 666814396 457082819 770150333 944517122 964947587 769016340 399767099 359913985 94233324 546606625 658072893 667850683 798934398 425184475 890844721 283959169 136552616 835925589 708566560 702861030 857724229 57588777 260723293 445914348 611863742 743104643 353087731 590762927 684546312 947877576 856106923 914258345 407236298 235345184 366195697 392009553 241698125 107904957 450981041 55003978 159118324 161120868 313750748 759240475 612265803 182728806 308796728 294802681 133346091 337554925 326857591 821124236 14827145 195026228 775967536 10755521 238946258 485944727 58228428 662924156 989321595 966462546 240555308 852735777 705587378 907778366 876243270 564494168 710809748 146088195 994373393 287513581 327476027 770665466 2929351 958071224 433974872 154776806 400794407 889440793 70917208 143882906 430521057 710521298 397616958 938008838 390081416 150551132 597718993 170633478 944915382 687447586 722787465 284555727 921711662 432701684 167877201 326104359 912706118 500500892 662343162 704925371 128288986 540813197 843595483 733457536 491706703 839944930 57594079 31394492 405428396 735689413 815853554 502663387 242099688 508729501 854702693 670463114 403100764 429566544 908008339 484363485 943454430 628867637 933167153 614348016 223228881 456279585 145766995 900702635 501389097 493252549 417077435 799780585 532832527 981665382 596597039 761130225 468212750 327245857 553342945 730234058 821511340 309715460 356779761 53559089 568024562 249534810 154320124 620801549 760417323 553771838 71712997 904350829 434530748 776952573 67945889 744302775 410686113 649420178 812787236 326991518 528645835 242340582 568300948 860596412 141319856 165731551 851378212 799415891 995325862 626772367 296844795 365901760 266162671 260034784 15754444 371759116 467125733 134098430 529613043 423286660 366048310 326756590 252605807 611276570 155883806 693400185 391553926 877110133 982735006 693580161 341053926 884322554 788060255 53999431 617697393 31658513 322770592 445185520 608353517 91015006 831009818 59166310 323076704 219090679 255636595 411033005 633576119 338420072 488567300 803798573 472826254 825264040 908349037 189707815 35561960 884662055 265001159 316498899 844679494 313773625 584720877 619912506 548905441 879031238 507492725 667982502 365170654 629949558 195417165 125640750 805777854 589843687 922403830 303121974 641682107 961885085 536027719 465310692 356693105 335804546 1577537 804905880 423649258 939573496 701347217 624565974 535023940 960407077 112339488 738319357 957413937 740667158 386076719 18065652 71903451 498127421 878506566 399844599 586055154 144211128 634320991 972649284 959327910 739606057 878318258 527153319 710608252 144391598 877677860 166234561 970577065 52016183 658332440 992341877 970308725 973699418 340870214 489576361 948785823 456919575 143197663 925476934 32334146 747020946 165413445 614964808 328591166 493217109 48710071 30253601 882193612 228850392 211824426 532876000 697912481 199343257 959657634 968493511 973813135 255849984 740410202 131534222 780512253 368488935 626336015 66128046 368567012 150029383 155744688 938908462 870999927 938513585 613584370 563875098 724302359 118159600 123675180 951090848 509571014 114980087 16215876 408060904 467864882 203924015 883228633 87040460 882696748 636653728 568616400 64880526 720163639 388152268 136320014 840611333 413606341 612640113 184255901 369713061 884461061 888169955 377488091 250387728 1944358 2688067 131309942 659226263 476763796 813104619 679319897 424626961 735397577 948657549 288079294 26218303 232663244 116890486 596482708 546284916 308120567 199845332 859865724 937346424 446363375 940665007 698711145 178907359 464768493 912841442 507977356 561528780 759113061 95541669 467606656 289926072 492735590 820946964 707963106 499055363 311000258 615608669 618895414 855126170 385538594 86877713 421006448 449453485 686138761 974594413 984858552 283252482 561221032 539287997 362799154 223553963 559867025 175440162 292979859 861931728 357315080 603756654 164223158 354069312 952946017 532374509 172603114 738415039 668546393 980522694 632338620 954209637 131412789 358942241 404555507 456548466 957253119 609901056 135757060 147355953 461578606 528464642 460466047 660089997 741775284 634900090 815886192 272640692 970189694 505741367 955677225 927066376 28229537 290031589 315295412 86329418 483314247 485240812 823853322 767037298 991268979 879319995 974398902 29034037 308016438 366920502 844344413 24397203 602884673 735569684 579473965 274226552 747990067 5003258 56860264 596943759 579434877 531089696 225055371 940590203 217484436 340940547 43720457 520473940 797991019 642725038 578121323 718439238 519951762 882164967 405593123 309523186 15945130 963592799 265274131 469044798 609933232 112564695 347602291 250664224 316626268 459944694 420700738 872181211 34098335 888988879 184609867 129367513 562504041 160137538 738783802 97495568 629165420 327880376 467210994 904963702 743342341 825731587 590150747 585267635 409350599 195970709 969341151 830022133 534347747 498853462 237897257 586546661 305389128 596498979 259724383 377823976 403579739 627854173 273741019 166559260 264075306 858499846 944874110 311356648 84953999 687840885 597330263 671527041 199896801 504717067 470156234 431825477 787840401 470482190 448635196 117405149 628053392 394924009 173544385 304360560 103065676 531914259 126962010 220056658 306931455 535686273 634335948 788762076 914391558 247926883 891206877 437194299 590347870 361040522 695333318 236477318 500087964 847069290 731566519 100541230 124484817 220156647 996726503 348650580 467628454 86242553 949945031 675062197 796520583 849340664 641211782 952615163 49039067 987574085 511097449 880267973 147277554 332643357 830929041 924818017 776934218 522191312 810710003 948981306 197292017 837282530 669108474 37731751 470764787 873400969 217174346 48942710 118433347 100168344 334495792 25754225 274252321 810440739 993447262 526878342 793971031 749162185 957463523 91894712 325971611 871709614 905957720 483273674 875350898 868382626 554743114 664083707 741813052 588315295 441318815 456973089 288067907 445129896 193352224 527677068 104676322 99565340 269531229 555928750 394252035 339843876 198619505 82576251 151654477 792469784 718500624 410090409 288820623 24592914 216966658 964427 184167207 786562913 775925545 709081195 612609011 574171040 701052715 764268881 860562931 833869958 134047402 195772375 912408039 373632266 105585618 46808606 510558600 871771529 560860372 641160254 352475849 153102040 269327463 931526397 208377964 845641144 114074521 620219950 598454568 777649989 493602080 458082992 368895686 653357622 792386332 990438769 166365662 527281758 691758200 840682693 133049593 975037933 725286944 577977816 954941709 864308580 115782272 717120894 704666329 70748513 719244543 935645026 729068698 443272510 700869928 746701842 225350868 780295773 607733206 74060354 834485757 661090089 23193700 294671752 713474283 690033664 394205437 935106511 578666876 366489127 316983926 902945979 52301877 691536901 692632340 405578620 488036134 418365321 85297437 255404001 147566373 817567412 122735511 137099819 590049346 984081576 996714607 402107319 675486620 651345440 809246547 292365917 529786378 692348201 803261952 298649051 951545370 192159359 572591178 599029317 296593188 895080190 528708204 721850487 886383461 185849799 407866535 459951133 857480110 368625151 333418170 527646177 710687073 673984192 85518679 944331574 835075388 184440068 478987977 949157479 660043373 290565526 61048916 57169910 711198588 53897888 25216526 277680710 496874199 514132999 903646984 427415076 796380480 838397253 482088778 280567078 138790380 258895916 795331951 434778911 237297891 691085123 537391482 178539831 526416320 248271524 287512397 391788342 371429451 411625236 700371490 40353527 937700836 926693338 127419673 403989393 147395136 372420579 106104436 641210277 686015508 176617241 310781144 93089519 84314642 220615207 567611758 428873192 829489009 828356790 110474731 701481167 944304101 25402185 860579365 750826785 975797510 670572425 236377886 558779410 500715335 584976986 1972938 317605219 763381472 804874251 730423484 658857097 386970280 405299 77341876 446667733 215706143 414660584 583624036 474954905 459626077 548946708 402248415 736324833 239561274 619030556 133328557 794775511 97014884 704906537 87471786 554658814 395492914 873323199 59373743 204379214 325323776 352587384 974881105 289166445 232067740 157396054 813491149 558148906 559448805 872929662 67718184 775194768 111592447 127140507 754731634 775800193 508990856 872334451 570095825 467390975 425537487 236796707 711653341 307977885 727846418 915518837 205223166 971010129 589899012 382865575 986273542 625518065 732055130 44529703 755190089 429693709 400236521 104230281 748415113 206961700 489959323 488545334 548782115 969312443 652589920 94918256 256214541 371036322 378184957 801841321 497153952 200503033 882519236 931719457 653354840 585352751 401091313 424091987 736493738 856787395 908508290 757575181 603906141 278135016 346780977 730711301 95875456 299503398 225354310 405572272 795174101 465777201 486070227 568225548 600952156 976175907 818640050 571480270 801386512 86857561 270692808 599914445 793168401 851304628 400133052 143275962 198847978 481254443 796576282 514700327 59711251 664806784 206228408 142286097 14988425 589666419 41025503 680516264 499813762 156710149 662630293 394472497 71790408 632747596 308484215 411503545 777948145 456179245 452559462 469567479 549138183 195040362 365768933 77837379 4889450 10813211 465909638 694665278 69 25539129 356173938 487179921 804142248 245639107 87336672 490059940 109934811 983994007 949488683 920989912 67263702 355873403 912218779 609654437 317158343 217124248 581044087 942110024 227176822 270822160 787168460 734632864 400544700 890838048 116217137 799110961 572493319 929325530 348048573 913482449 776598118 995427065 885534738 226008189 833906525 977015194 180883462 232853198 105334806 200261450 823686489 76238077 201535621 352000207 134854283 476803746 700250078 149352373 363856218 505734712 987079381 10147410 985558643 913084668 376694716 642185097 221813254 662814340 389970634 34332 397897759 819586335 745493526 406709165 51176233 955764942 742714656 942313677 719704689 301276908 606781434 92721375 141238439 128713670 409054746 696708472 284811226 825568833 678875091 848842784 264977605 295291421 897310861 467677251 480094731 175714914 104182916 20051513 79144744 72705309 927521850 223937815 158572613 882113135 324020828 648129217 405009769 439553693 955422436 428374038 555710795 180234839 162896215 62655264 51270636 808794920 278983317 323591931 500914214 498937522 154600641 300302041 525306648 887290014 646177415 399887080 6516335 993961023 567932222 641047051 391542901 902901463 693824273 296595859 521264708 888864596 147255330 314263809 289724293 41803166 635560733 868852224 460180024 763493478 77004604 373540742 711499627 973372561 229641506 61171415 570260877 325049989 828278299 373620289 371338572 562125184 134860281 59175601 729533210 95798235 268547866 531656839 595146125 891170434 10229909 397860387 974058992 290663417 255600561 673287899 865008176 731294835 446792003 131465207 818993327 341621313 563616966 329497120 530911262 240687013 512830181 873254551 103706895 512486410 13976006 45953027 117101316 770963621 196861257 78195632 156903381 917152873 736302669 863601092 503588187 727436963 902368925 471562773 418064931 808422201 503842443 592429398 933204248 453487545 429986524 335282567 14938478 210716369 668662824 609906540 782439713 882438148 743611897 81410525 727973868 612298407 530047296 723304899 347605641 138306470 718474384 540154349 321503581 154354155 850757866 541978814 411538377 913323790 207117858 774289778 26803398 70935445 673537341 819945081 475843474 103844778 628915255 466390711 515364342 583208132 767928339 219534929 563970493 215977677 285476813 402324850 862336091 394986801 548285076 61937135 351888695 265203370 381323384 186308732 734495998 413993804 342711633 58154804 427120673 267240148 48390418 568203436 252248907 10884391 276398145 6462488 49358425 759813625 549344482 352072884 363550848 77006197 962940192 377752629 668175021 944239503 388257590 106893099 860074029 420804294 52927978 271927725 998398786 701075542 822159348 516057674 904270511 987765966 652870801 190551151 412796307 723785626 180755008 797249209 269527617 962149607 670172643 842325616 836637676 511876293 906836693 996986133 167211342 666818448 179183964 252437642 317916971 160766275 74479079 852245068 716133533 382409191 350158436 646830971 932669686 193898657 487648036 302021140 802686094 110568976 478523646 35211833 639413279 881144186 521346392 816876667 294365981 49202247 787851545 432343389 609312424 565746299 601178693 228590965 270734001 222990979 645031156 857411680 924505341 380918398 966390352 789551876 928641795 252902941 783180331 438127450 814211650 210015660 446638682 986717034 953781048 461976125 321275103 251096085 197168741 809648231 208720494 770073518 635293073 318269284 921697108 387965892 639581981 675663794 115834509 487672641 776680190 959969366 53859642 423573654 696048883 212223205 205020149 438270793 266891045 135523878 356482510 294364674 162294772 536313501 785332619 886325132 445767198 554875805 624574633 741140284 23809421 249954154 378211724 33168562 193095903 533181686 369797995 905810478 980329285 935892734 969125261 608703610 712237242 134565498 809421149 154540331 297386202 997782962 634006627 791713358 40188847 397295965 780772141 822856770 216078076 699994646 348547089 531478237 1129066 951031055 473754521 949521931 507785135 889064814 419809828 304562351 705042204 271213917 408171186 831479818 621894213 249955393 25195557 713505381 205553666 111705941 166770445 864008269 692838226 382507911 23701126 933125901 30700019 784425290 457248980 74750647 91970113 781487899 862901600 869134815 481760021 758286209 614220979 204168534 749388538 512494974 655542073 639318391 94391082 44157490 248373737 353585346 828750097 505008875 465637681 712883086 777793092 194357296 965647847 84673553 487851045 612263958 319413042 734059529 640219263 495475578 916456117 667092347 714058147 238440975 570248553 807300359 941437540 779293880 415950472 329129671 331344792 278906270 485327529 685431463 172772579 967713153 54141286 706112957 361930343 188077506 420657453 58711899 788973286 302352761 165639673 338748858 856117859 394909067 210270739 10635711 725318324 418900392 590650385 564927914 388100400 570301151 184776940 665638217 328144573 901745543 460336682 340490408 361464812 92525358 747404328 844681418 631566296 698029974 95656018 789781073 483939664 38882299 928433694 294026028 679556727 266566314 719939320 29799008 557284862 446888577 102981721 748568743 845333169 482002872 242087721 162559586 657315916 544692752 81606416 904845987 694308626 820631966 177241856 552547225 609908919 933808543 700010115 53873372 659913932 374058007 698836282 462159512 457212535 979587492 804529899 701168450 509906615 878430213 403077621 92261571 413269048 524526766 863506457 285534037 248732643 522040033 46636553 222443396 157793077 420892580 58788012 999459046 875497087 413542329 861636113 233700844 107082244 105454413 269942800 405797826 76875780 927171225 746220741 839049875 252239078 545625289 17889687 649807758 651585394 622287324 712756335 761838939 774925875 874670362 609684533 689828346 518305142 625865453 272069441 800876518 336991410 63532318 162238730 827140404 678300917 794616590 289274622 169576398 188028576 785228360 181531767 766858713 627021653 755636265 569866308 79454957 49921848 278948233 664901447 16848313 162648842 120107067 67132470 83751199 247299354 965461448 95817924 878762231 170082607 8745119 834728846 919602463 514145075 42103457 98780976 109908002 909500810 950051238 24873021 400180277 234062242 998377309 260509230 906102460 253633801 375419738 479635796 380768784 200427203 200700044 131192207 918973358 816673082 293214608 179077217 54279874 257716679 580554468 976937633 825731985 253423704 605445906 512452482 941260452 161291863 436917615 584330247 895036950 617561394 140434672 48171282 592908953 418781061 564772047 127366682 743024828 786980708 470042419 107743076 145070765 161102683 158093189 50809979 315653644 453913027 985872548 688371769 999467959 718639865 722305160 834672200 184408955 970057550 479537247 337052952 144576869 829727011 860517406 12175994 734716908 933528464 923949617 840947507 126327357 498015132 105058670 67922764 764451967 579744686 440540375 433303568 77168473 759539572 704457433 233750285 914492270 323877545 720828372 588026254 991453075 392477983 160992630 753695344 460283261 159555419 372588907 507834339 409438357 684398576 5862016 351078493 707572478 331607164 425611813 413875867 466430166 42750007 146542029 382397599 561670355 596604452 575658113 676136575 898192435 286794088 481126562 314633790 505257289 614353704 686521963 229914490 927032024 980626475 747251407 257343723 694047351 678651007 893728897 374542983 559964147 776663603 832359807 528414573 205188953 693955546 700122159 933225051 674360269 577395830 216243925 885038336 737553885 698246176 684219554 913232671 439299238 940355806 931021743 498847888 675751049 301327665 142098624 247200083 590358907 257710667 145574398 421638217 286779886 327593467 988641377 384494083 772284667 743482669 968218016 246863535 9700344 258342854 801233553 948343186 993305429 801464699 833942986 594499052 273625522 43996311 582229375 675881297 142519959 680582961 300957871 698718458 328456459 324449341 820145956 709076182 57209450 678812918 619008712 482222850 435533958 393708600 682914023 796888142 704909949 761399881 733010997 990630668 908155629 279330257 495816630 584811330 395395599 820508145 295699899 5871488 161518684 691403569 65619284 976005575 920306261 363111695 245698849 623189283 721826090 580623006 468538247 604839107 523595874 732135317 195580088 61295578 21491412 49908208 330079794 615477214 702062687 535115479 893665560 466180710 414278703 958018492 661051189 562741828 967663052 979479187 624665043 97021843 757663868 432149370 624112402 43526959 474626440 137202927 448262554 950331412 253655629 94039891 154794029 95806461 310318454 796205752 139988916 341600983 309148915 173346217 212153121 26698503 233461218 943079045 396679079 379558378 714964825 825345452 687730618 749518593 661793288 99714074 268997443 642789186 73664045 463261378 416731564 120011070 236862778 458211166 416888635 720848413 720701245 21331566 314985970 320127549 653104676 97831651 937984962 718875396 733129479 46336961 379171511 281615113 188127557 768914712 262531215 801840153 306417732 663711221 353462724 585067347 237603429 740611835 333367250 85227768 326369267 453452332 743843585 360245354 54844480 716019581 481741515 328259441 448488905 324845579 349477930 688937437 281693102 191781696 173581265 486340550 142012223 891983517 776065807 425093494 9194567 852057296 665776733 550000688 290031990 582590355 404020982 918196117 179397092 288699184 990016456 750882821 277801244 588266651 456233648 729821677 30657547 1247068 107760625 191823885 79733941 503036829 920826205 905429939 474661895 724845500 601626107 521057466 76267564 869968252 899653487 858712146 498682008 53213539 977699730 198196851 580341162 916394798 661894547 472867402 384773435 568500845 99019511 981411265 144508708 258730657 417698842 932982795 179516910 566865162 71252383 874440979 542180108 60433428 494526005 412382017 901465661 686339626 401179490 157965490 98596133 923471344 95850294 135970831 37076896 324316654 304456768 32690960 567491894 233834419 736203880 158580819 532756844 137070305 410911954 921155220 290791184 983307192 536484115 808248924 334630505 819641134 602175290 109244639 644700956 275946613 535947356 515267941 2529551 592299998 283925532 178394024 832038525 672473613 113992772 757278557 505580294 179114476 753827223 296349982 175729699 288351167 986011987 598040268 111675071 801713012 343839932 896507462 745021144 333464605 506868814 749445081 766456510 971547051 923155208 87969398 580591769 226515406 340875202 392208371 679023019 547939845 453400837 650673753 463615125 235995307 909675355 25110605 558606461 280024449 696920418 586934947 214079434 842304085 222170378 52192142 313247141 898613748 486555407 467638315 26123221 45938643 155762654 494405129 978545867 608144654 296176253 231582117 104686254 32260868 780036252 165253991 788764688 941797290 685755563 990029009 410049223 698699961 35413529 346084845 735772593 687529951 147255250 812578559 479872861 957886191 193895570 694291399 242925146 718202352 496854868 508251559 716814940 427717212 582903000 725604072 752170606 41507729 28790425 246290474 591724111 385563452 571749592 653472806 569889356 417860449 932791716 342744848 315927769 935225223 956361399 57569486 91037458 39464958 217132111 961709297 919174320 38379360 822410453 864405761 703933282 145591558 205577333 877090900 649965605 316984077 68733051 608465610 303938536 361794469 846442597 471675086 817066258 243759779 280968434 722182565 490989549 769062657 212430154 874835459 644685030 622786759 398166428 323426723 53436295 985955279 698890787 304518769 877696134 257574829 640069001 107684839 126729494 34509251 413036888 745955119 420794537 193025521 670994651 672920431 508195937 583120235 88715389 97198024 320565822 862999828 635374170 549745530 45105256 481241002 733946654 239953883 871222566 207201676 919069160 326446412 410643636 456715530 398594255 292535010 26806234 567807380 304795437 793786349 729501076 873442000 899326352 903972624 721870086 50028701 824198318 230323421 982096746 447431440 490600483 174892028 723491991 331584166 150405428 440246214 797116018 78215598 510421913 885592782 191732755 753500707 727160753 693768245 88954508 348045112 609876647 127152868 489708121 943973830 681082753 416700627 54924294 936534527 338618070 632438372 66730828 892781459 822798590 74139976 770303978 688559137 51615894 215779312 474094315 873366833 120454643 421201423 494823752 96926402 441371072 447753817 600572104 321424887 605167994 808630756 338785054 876630588 7231995 372279232 117343446 164956443 969337399 962688040 151030485 557937871 407123730 762250985 815768269 514268055 925980386 46003119 334855622 216536937 832703462 55707527 234482218 560445909 205740503 925263417 844942649 632749562 994433445 3535794 745990696 177676676 109874211 124361079 32167453 824927882 339728031 905108408 671603893 672390164 542623569 216122903 827211501 36536537 103755770 297316588 195828000 724673110 448507304 118677546 52493268 473756658 294919039 184944303 414903104 282546022 53622346 283817369 189093437 692804915 620417965 930232608 745237965 493920302 900187445 926965295 159759007 899866891 234818492 857292049 877002694 882377800 681308277 368500178 567186789 429647834 470223147 348335313 529089373 695838651 635886054 393029187 704060011 567673250 609780839 903237522 162425931 442705392 549311501 564257273 485479588 592368153 160203213 720146529 731299407 180741653 563598428 887259952 710556254 415943472 915255479 110475471 887523986 438258545 232564541 207038877 142379188 511462313 243731154 143695610 975221794 73457549 766001535 727093540 344610147 428917757 887955140 636223538 768892973 832028234 634233802 794655933 761543087 498637766 427284408 435013160 739089886 382780318 121893995 277434295 373857736 767105205 874217670 960653850 459948855 66108671 232721738 792244627 200733208 142092977 20075599 566178090 482716059 900124415 954257921 699409448 394272344 468046671 448507704 816201612 112356869 166547151 666039198 11215374 109449124 834969064 240078819 534869199 374724142 972627186 30538128 13284138 696098388 957035095 234771049 729458711 307931673 608159556 608375949 766604322 631821932 23941992 132233571 327932247 884864241 681303538 266740227 497832017 543939742 93573347 361251840 12275538 214104611 800137919 424173522 802830906 914089706 78168071 667564488 908918515 476347930 990185617 261025720 73882208 841254660 919478314 513969420 597580444 544147866 400286462 884715145 114800515 394233204 860727098 491074644 54300858 446577972 757951924 161136591 968176600 562099445 976270890 589500786 436078122 162221883 361468457 916788557 862305731 225536368 951075140 716064260 612780545 539185394 774558079 556269804 315707046 658983527 296657850 690183076 195758357 665503448 980208473 798956992 356883467 570747904 232803815 624767756 296371487 839060165 868345222 591270402 550008908 63216845 941848149 760593680 43325453 926596418 439266970 296863350 822016632 297603719 770270098 369714476 456185376 809893423 452906880 396447176 408187172 202950666 915911474 183624568 653156951 285802552 829142398 401044877 455768101 794405482 508871168 636749208 687593852 280667681 856106083 305241733 606384165 658008584 853787899 7844447 62966993 398065566 660734294 710404054 558366689 860527742 992957876 399728472 133546173 87201443 340175874 81333268 266455307 136155988 751293938 41916293 425888067 196950209 303833045 180059928 136280779 421169297 359070816 243108191 137679724 664744386 511883240 897576930 271767617 217100454 787871488 718930091 629166665 814635952 282498510 922909724 36992325 24983106 359860918 360840040 952800222 785345985 138308170 304529728 836324247 570060539 657050738 524912883 536910273 985578610 112987992 66357648 449622316 887471742 427202669 307409043 174055063 865196661 406091474 999968667 80522167 235214574 141532340 448182018 661174038 821992439 492931628 185386579 920872005 569617105 356638766 433681700 344117842 968347417 779374213 63499849 925899943 549205177 119643786 84475902 46672668 953894036 366035772 614142661 585532112 478861549 607963629 697617653 521484048 2433815 359772417 552276130 37386960 649741624 927806111 531615993 263151679 611433668 728220362 92635409 674689244 898498033 573805513 444254720 673999356 12905261 186425183 374871474 604097974 678477767 93369091 206166460 866223662 575351717 37594402 600017723 418216571 313359179 830153805 731512184 388921292 390286019 526542295 376388843 555740506 701216269 290769910 763323512 529338132 839204247 107726615 322496670 941750068 343535883 727121552 24120797 868878308 947228522 324693649 537785450 561937421 687291629 262114967 447917362 187332671 424098114 719060237 376566019 731744818 375514977 4374513 56701008 517256790 270209214 57949305 815041358 520652839 585638667 947830822 515295669 786073236 878678338 578797243 406995619 472627022 747803049 927595004 892632469 600561499 128488403 503796935 113524729 600146309 264297812 444500145 548631343 848074563 166652793 653541499 914392822 912633545 999504973 973230021 478568800 470943693 339649594 886399069 921206310 848095970 150632180 638017118 802406583 345481581 81743623 706676979 104489129 233661736 941018166 237440070 906170722 799446847 645331963 12622438 419876433 396578366 467834366 858569955 868183225 151628345 860765032 982123500 138236438 904601254 172481917 694924041 44173833 1831389 157118913 393074550 256115236 438868674 427698522 190998061 675376397 453024876 692373046 309896168 176619518 118195309 928470970 563819371 501426217 614845112 229030865 319302624 880892129 528168964 141688828 790549384 182603771 446387192 700140561 424022543 210173528 436262210 109339474 766459004 872514238 209278860 865885979 865336108 979177606 911783350 498846010 829052647 355979318 193624709 942172490 416657426 47274084 424905259 46566301 790883883 269388100 27282333 945065353 783301790 457161884 571879964 700728835 501460481 365730546 23256778 485207157 496643604 824792930 202998003 443213517 467463833 438440708 398072256 771530885 484134240 71611277 251637183 56691016 491229218 307780134 49850568 792419350 339976581 300770041 638600118 765317110 235073959 996578042 898568693 5040878 114317453 655857518 2343777 626930447 326037019 813417202 248018731 235608348 156152117 489287499 886534042 877703213 608894408 663137433 80373518 515425989 239828908 630960159 252819466 955935152 491735609 245856463 635200393 37492864 196120735 584672078 516958928 678072826 422561924 191314288 775131594 397652195 563864580 263778143 648236198 994604013 769594079 292978332 528092956 489592802 88309705 504918762 386081753 356270577 268401750 993915969 685008282 344979352 462241280 915214163 790794379 14593260 537385827 934664126 646992829 684521315 333944142 546731432 1896091 369504649 685638254 142055488 118845288 509308391 335294676 181138414 489664450 654864848 684806121 186057881 897563552 886735622 716357875 600625890 596130485 682080261 949273227 927787259 790300912 597350872 464419310 237430836 442582115 454880359 339726161 137731543 58898742 511607420 6961638 635576975 476015317 514452227 132823104 572638392 599352827 323583408 6979487 807616236 110123989 547073911 957263208 933309563 1889738 236776949 949153518 7250242 386358719 516545046 618944318 438220785 909762954 342066494 751884373 126450572 233694236 910740324 340944091 490027596 421783516 750214767 474864706 403775322 741592765 828353336 700640070 678178904 66423369 553609639 180407667 341206354 413360708 820655444 197467566 686240055 492845298 851116664 926110557 318329107 597884921 603197080 832490407 981595241 572838526 772624822 925088869 698282092 994070858 970965591 986758847 566145885 648534009 673997775 291828534 880755872 712570329 238953883 486768601 692701779 217466805 453102403 679841353 670701203 946009055 689178923 325074813 721281112 597445759 580375040 172766796 570662261 972926612 778072283 100490666 852220025 98709130 222724909 954262973 907303675 235747658 943416198 293926601 913673468 624124275 420431243 718610740 489728297 81200604 964431496 790732883 222649811 652990293 257789860 109125194 638174931 752673018 493318250 227358996 286211979 945102523 704647121 380982674 605746733 166668928 199895026 601668673 518525956 509085384 457998981 852190867 635841795 999623192 856454355 175875404 728069546 89696237 630463493 117149892 772047781 917978983 197655876 734275795 715269011 261535057 389128624 60164513 265238008 215126910 833350113 305405724 442374115 565680634 312377928 176460663 504309697 147312378 799113473 95144626 747974657 218424551 771501993 767808943 763682871 269133459 54601811 666427269 60725840 679385144 749242494 495267013 967346790 780068208 78143368 184343808 529964656 622141994 160130209 944484748 867044514 55110743 64867261 269972216 523747529 231112008 21315887 968490074 715936325 987186537 583506653 181260766 760234184 132890750 484520945 691943401 15542244 61332383 421449293 935106697 794159711 780964418 326976315 132663402 949139670 149415715 1622352 651387361 756865942 670128246 350666998 676425534 70318453 713962116 358809683 390303217 307684660 234948386 352516027 509321849 203842076 726016736 536349874 31305659 330480790 385392199 891402593 528730610 37855237 552961830 541466759 935101941 547944182 18663864 418357831 653822504 58923667 501689976 310625140 588854225 883287721 534652697 24820390 773658734 901824165 350905213 483309016 626132117 353654587 39963673 486328534 580525431 741711923 641504721 693625510 620015817 101555241 80883291 876758072 209971245 532729291 666343157 280589339 4579587 397928692 476352583 773713186 940086694 536139335 227053749 217464838 443669437 411934543 74994899 683968618 426651784 923405207 294371031 349162261 313314486 637364442 718662021 220787973 18284961 642384982 94552220 600806872 809156885 805441436 28085401 938715377 376235376 583044409 317801561 968120575 758897517 206161252 594104359 767216594 776811303 706307769 790917212 925095493 971410844 537483699 550408195 275803239 720754156 44895680 779078152 542331999 865952797 792231512 749023948 137288943 204180996 63560553 526087879 288304918 519101744 153647447 90888258 138759373 189961017 193509149 983624482 980775933 751309509 622468929 643597631 457429015 760947687 658647769 787213539 319873888 588209021 741683708 111459861 273899089 190552514 275832715 600564770 180000450 408727982 466294501 816442917 51239082 258775916 334974795 928098685 622239663 67590130 167510243 752572660 274477392 483132529 626345633 120341452 719458757 867733381 382369540 129405265 486092150 680658163 168838723 115611102 107036341 893355706 910446683 639626354 620894728 806362515 156717369 51904926 820340272 510991229 550127367 433867282 235808117 13899063 613698304 706894244 728766502 11462341 304668598 784624057 617556740 888995726 452887872 496600217 599442091 775998892 499755313 86263920 233116993 814710004 23855757 446814302 143609318 365956693 764662834 128821143 417752934 381575789 579306119 157823137 470782609 363702423 862844426 533748092 9324795 271545963 680986358 398089730 397027768 808259965 773725004 10684598 623028617 325406416 741756713 105047438 28880590 568514427 257903116 209479085 440109168 167610412 143930152 176857720 30534463 212473540 680743732 864541256 263094110 761948077 951103855 914388606 676990258 846793461 779556268 697245615 609213073 39718270 696960087 463586008 220130741 414241040 972812687 754063769 918022251 80681768 887189134 801340198 975313709 51904896 652127458 758852262 930340608 533438105 270947426 108801071 186655234 644400097 5698027 789079439 563354310 530684813 963803286 787267193 139479553 726175360 267868892 929117239 883586703 168868721 872822516 72238202 426333500 90453477 11031101 928912392 415224586 93795944 933210696 777057443 359033865 253215272 978417006 132157765 575029446 525194184 455373909 574940882 272731971 326646204 312808018 252301788 523531801 273752007 449380581 860594778 65583119 958949993 449337369 257164943 11291022 370072210 382855121 38901338 786660463 550227010 724422178 781064330 341472563 276931898 236419084 514102438 225154510 978686280 734536034 286167239 187816990 476891034 634298820 67853134 470278876 619229173 732523298 487796857 847552645 868787802 776109562 506278703 692222587 407533346 169288121 375531993 583250199 609396790 264520551 657277881 626408698 520309240 785568042 501341925 385876366 713983156 585543867 915857146 311725357 731476235 962145798 833980967 915708378 746897250 627443354 188984009 300316992 867571788 891960968 725173619 36870475 943908611 234941624 782232510 741814921 850735564 543010486 404803885 864476627 436779667 769726637 984624043 509252069 248948331 682334838 864231867 624644846 660838806 831040113 845626119 407487534 226759785 196832991 233223939 639324672 588844459 980605893 713142799 641567177 647473772 97728312 346047985 844425737 477555793 109280241 994563939 892257430 766751343 361642641 849294962 484281052 648156930 335626156 499728292 755135118 294660800 537469154 981711370 160016098 161643312 174087261 189631299 193845876 768409655 500117868 71955446 960250418 104276511 485129331 250506971 509087987 310052711 763118347 696686815 855450659 197159241 500982769 255981094 150559840 877113187 89350737 429276125 644584839 905625525 881142868 606203067 133385256 988403835 791530834 897281122 690188328 420978733 728446106 902813390 409164470 638369428 29583220 964319852 456746655 855064735 805598499 688488502 759012232 513031487 24828859 861783623 591508153 8487917 74540025 990107967 228194853 382204315 211270620 666032664 41092444 680625511 358645103 384427276 662864067 796236006 979335463 105428140 387730659 403960659 692955271 585487367 853609877 132098268 99998795 626385809 555114394 544762298 6506794 863389029 864325434 987190885 837975013 160324887 934146627 523680490 402609271 304311466 556812898 969784421 590001918 922586216 102411013 265687357 434363424 401623486 377842024 443216953 914234045 169319379 838252642 709591304 443896729 663375872 696569700 596164268 599647409 481858710 175261678 178839432 322779519 208634731 976896387 708638246 418172017 594929910 248725480 110850860 168649329 723476209 9614257 859564274 598066061 153849771 344014024 963734045 470789212 796070453 6682660 173704229 824161986 925673201 757458870 764736224 555242033 41915940 81402341 885132071 289576975 468771759 709111244 951268311 915607938 186272243 900343533 556621577 519823202 535520754 2817956 950294027 440963819 505136455 571708169 916847718 441972049 279443058 875320513 300294719 228375979 239939641 721100996 531494210 176030800 136790900 390862511 263057164 991735879 735647104 160706535 411036814 620898262 873105096 859025246 700372727 812477862 763075254 490821301 508687924 989206522 124464032 166888296 173515058 845980763 152332428 938649037 722025001 97753870 739972182 745150358 239767446 251029952 107508916 176566373 811290291 712362639 646986446 384075867 973275434 961998756 418119349 619997158 497367011 549341625 442480642 587249618 786413065 966717479 697906565 364185965 210111743 118847416 377046261 471727333 320759700 494388700 387208825 118428004 108465694 917591417 983053254 996777429 765131363 176377198 421925738 604387747 931222731 97221558 741614091 508078890 56038806 697992791 92355299 230756330 817697214 648759032 201012908 150350652 693367062 174185046 196600469 705922700 506447218 312288591 602536072 375003096 542690950 870551592 254556773 778434895 367590587 892217595 642654394 432400910 518966724 920856954 453935691 269288346 305426126 442151599 683907691 586291860 289866083 286993394 462703253 133991505 976682408 380462274 915911019 392152136 250944266 554416217 227262491 583780157 291591281 930363096 192467250 927177989 350790087 412527769 212469963 870616704 302729825 240020146 604965340 171170991 741140046 512751745 378652922 127066562 939728684 790334340 140708103 700693030 971479441 709501702 455163168 535460629 477847202 913614402 244566771 654148724 435758030 145721499 364755455 345561530 674616167 931488927 161745825 226194979 243499263 335067409 507896742 28365850 696279525 70923886 354774596 137597649 754452008 572175649 971107262 56105379 496009811 388022831 154488263 238535437 336936157 358632322 475561211 417189845 918014725 525834887 940171533 966662977 114675151 428854471 529376691 163794793 532679311 311536758 237959613 968317713 102598446 916603842 374340051 960245472 597048807 680404143 177942823 265900569 921808626 708405736 82533340 916233521 96993668 972334036 96572606 263109906 213300046 290009805 63199130 660869319 351128734 513149999 950598485 820062772 351346462 156901861 544483268 887016790 715943316 669472637 49317020 574502747 44101690 704125814 49543038 370262916 672584875 513637053 926056171 741946370 236289366 83476667 2660501 992394319 350584341 508303407 118815702 941046383 483628511 147776999 820989197 714796388 573238608 214393853 502681156 784697071 211292393 245744747 65441185 894714381 678954529 540311809 508950385 951264162 8334948 947072748 493222914 262388937 867769500 161344461 414293918 234114837 934033378 47544361 41038065 686592833 570043117 58205130 212657903 762108007 645338781 977970163 208991940 792936725 283311159 248180299 355699509 11290808 44468072 948469246 783857033 618680484 48224339 15428625 915070917 935225301 892005159 81821089 760084618 318833742 408971131 310815474 551869120 375063471 822098153 666126231 883450287 693349526 519353677 762933004 691432398 367835634 875578181 471565956 983410564 628558821 906876354 828672776 442536374 746062691 113481913 94904681 653282075 917066747 880506181 926754974 473486802 242324808 273373746 362490101 111369647 391532466 407932132 540742901 925383783 514835311 213991258 376454338 796650477 717041377 142221336 472809406 120935572 338944144 495222407 953003615 50484241 133953189 13649176 6855443 163622615 157700689 646490322 505901668 709899470 887787714 868712442 301637488 921321366 37235007 586734991 72348350 959868869 430040951 674289711 370438969 984088926 813166766 828599799 918674131 223370476 70285076 330246160 870245425 412264333 5254045 570850865 329397838 724029331 388050139 775495175 802061180 422810949 870127905 571609225 596348770 778736806 543872115 567543674 645934040 874946317 351527851 84335236 111545596 496246032 754773030 760038970 428963877 352564613 135834713 261377430 124490771 478624165 781695433 515170061 870941982 674912387 589421216 809139392 678507055 869238456 935731847 771451753 192856617 480746914 512835307 113892676 853190273 938726861 238387910 171116021 977868437 757846173 874003356 411493092 872496652 829920192 521724526 36521435 403077275 974137665 904776887 974510329 674445927 931168701 390715388 83795351 259057700 601456988 387709659 695002016 945784721 913735077 961214258 19093018 796842181 494011523 629125146 222353598 45573493 164882215 136946767 658780938 933254626 303130205 996344513 958830572 186983368 801620710 201830684 530958284 173112848 715891638 30354023 148075634 762331464 986439452 564485796 654784821 894961779 664342916 258720199 101433415 630338926 228090406 112036412 530869306 321639746 714236810 327108344 857283225 111754099 486441358 35023650 399917499 620671439 316044150 688113547 276224783 570760835 160406169 63438346 399088820 105059964 683029193 354901962 622858139 43979171 942523849 850721221 224272619 181618064 821380653 154025031 103661755 439499361 726774498 896353551 375098920 103948979 700462087 394509021 644484071 854908308 980504713 74531965 676993161 538813203 312533593 968183898 360879304 823234777 482730367 491371068 882859207 807287350 31499013 199473393 434357049 551779225 704976701 850476504 250735612 804799024 914238945 920630010 496103000 222151420 693308934 912226815 957145297 538069793 78758602 451456322 659634935 965886815 863249465 459141143 253044042 442211910 915156489 775638258 898359728 899619777 649493976 94874232 737070361 441775750 467461123 318226180 722456745 672447197 619518235 871798037 667394387 628216394 688678774 60392976 972988366 269736691 152976434 312716294 359555726 997410816 347815743 929782091 676053709 297837502 669892413 506866283 78968236 21038485 527323396 753851300 166549669 208915121 58109125 32363149 743836216 652021252 487874333 996750903 488328887 164786876 138364765 422793193 241760521 46252989 28280264 946392590 611022379 911996081 296070216 871932371 926044502 98540589 94444891 245265018 234730734 583678277 886705261 210643980 924312497 818795301 326725111 233774411 866527173 452498672 253792741 706562341 708167659 183121982 650498872 618275426 793677858 385533743 398278417 305268754 691036698 894465566 359746120 382375955 891492013 328068959 176835098 195033641 889160797 723804053 83044791 315524432 86018017 203405506 81881914 84230904 652602094 249860306 40772917 574530784 190304993 557547136 648360079 825941026 571467196 456060005 769206278 618930337 803977567 483849030 292512774 782717231 786291778 916698757 170741795 242598919 228482201 438896218 876711088 630313054 619587986 173312144 265906877 45651168 403812041 203616498 217543487 971883106 262305987 316765706 608591628 901224544 788575874 931333777 564160078 270608530 980483172 116953011 861487585 402969996 208654853 216884360 610654758 712919183 158631407 536047673 770717194 681020789 104136537 400765077 584755017 601869733 540425894 319252819 683097984 867913898 602320047 206334532 680345413 804196971 290348023 763007593 917357925 806052132 929228233 587508649 762573997 312265305 999997399 828092369 314148405 791527877 437130687 875928283 848765676 613190143 529913573 914269515 755916091 372210359 683654618 251780972 877079192 707593535 179894302 719497502 547485227 189860900 899619996 57775324 419756200 104249340 665154243 404822978 316913181 685764881 569499807 150931994 788496393 795888815 496310491 586399726 286058799 212228398 936838243 870514202 577090440 806664481 177432421 48575146 34230608 395795138 413752875 404497999 513849449 459698773 300283252 235811463 396176562 600075606 753476404 962700420 197472504 173550683 596405116 774590411 542697433 65406148 143143055 68097239 41404534 708509250 315511631 1344114 44967964 686763203 196392191 933012636 829472545 892963340 535012735 27106788 3113282 207828616 809099975 404667000 950148580 974068237 258298537 563855149 749552028 620519387 98124175 408681590 608783785 96980846 787652016 469785362 564090497 946514215 265793948 249108516 842870983 189184777 156070301 526311994 26085317 705651642 628231430 275568155 317329996 129996789 49826981 194412852 395538085 230971715 101289301 812730450 285632681 636631345 259652347 365113444 571872802 507441393 414277212 848722270 518925737 349763656 752052831 752779979 380300196 310229484 739184874 614674319 411053320 261819979 801056895 43154882 384369849 347355749 202376501 861367114 267571790 980642530 820112873 640593331 25327198 660779802 502876944 759399587 3902344 805713393 900887244 94541025 101466685 113604901 806183052 883958156 496205032 25258646 664978561 31023795 274074429 670193157 991545203 711900499 44964780 602140582 345900333 174801817 884701526 438147067 400557901 454671590 561825606 2034504 704681836 357788575 674218877 351924250 593000279 548030176 560007734 463612691 382129844 975241299 762862967 470833108 992696943 165776924 551369214 854509670 330264067 378363816 167109304 475245473 387024043 434685134 301575219 179777508 7131130 236160469 566620153 961911581 542045220 824916990 817862532 735238944 428504093 984478572 250931601 687332454 632699628 232232533 72878174 940304466 283954682 261981589 743405981 322454101 424761584 554450593 398871547 449363631 91292203 832638521 280545860 807007470 391529869 26658958 412671375 617029982 423687162 282013048 650847461 865475145 91557512 328831577 636727369 880388365 501764238 290842779 348328612 460547179 54881152 128805342 532951108 95800910 502348334 496867247 566029701 232866523 145986269 926755824 257913733 313836196 671180628 660067375 593413664 425742772 537388197 693009650 869513335 22331158 273673683 75497053 525695122 932814663 77270336 478847144 261130063 308194871 280376438 532907366 328761320 904634023 863753169 490115037 441004581 890036361 71763187 942054546 235931669 95770439 63016571 250848589 84267805 385857912 67428907 313090785 156061241 653692249 593817051 43312408 214823635 485680620 211645762 153507299 327042337 151033575 11049829 137150387 99688010 180909928 274253121 406533284 501400774 350887579 824780328 696223004 401200543 99606939 68814239 647825129 409691148 898303510 198579666 691298417 65412132 599697313 495279474 228064156 897097935 340667579 584744598 972465268 507176668 216008116 946544730 751936983 692260375 611395537 630060463 364284009 127146532 707472442 77178884 373492780 263111631 20334525 786177127 465789645 312999018 610976593 250933264 207166125 550027702 22378497 712586704 847666196 938440580 462450062 713184612 896847404 146871666 475257944 951185067 146421165 848912158 129194535 706693553 463179464 90180997 549269118 873392573 788206701 702484453 123479039 740989420 139109219 867999586 74511104 124438702 677100764 548253323 215075930 1991863 572034018 693145847 603979435 500400460 132245174 460225566 226848315 637208064 380109380 372418464 695892509 519603674 615432905 331944600 788624786 573828282 202592910 760159808 73162996 30837386 773613489 39220997 331112596 157177885 704521861 296222788 194851802 843651144 65714385 507165434 269348151 38269487 545439816 729630410 110589027 131587211 712200750 102868648 659937714 423559404 453412181 193725272 642197521 432853932 111879183 188300551 638254117 171101758 155203248 435397799 806071607 411085599 848560377 10962643 274014857 459689156 543483008 264812251 899846233 403938786 877168701 779900151 642838736 628740841 127700774 811433083 59550785 574399697 929010533 321035294 580864220 653222287 114964753 751488506 190011937 385614923 59496082 32355403 105924164 852986466 609622395 880321370 508147416 553708754 753169482 947834173 854243503 563509621 418906518 729046582 291860323 361626102 464235738 827436519 774043907 230895678 996755083 470737432 685399779 797149201 151777140 748894287 515396507 516492672 220011683 719655605 679543428 813888664 799921021 571361806 50447060 800731570 945862653 188496163 901740156 353993793 41827457 908927092 385973943 451496325 976434746 655884680 670817864 169334348 335299041 113642280 419927343 922432084 799032846 311748506 26093717 618583031 503106383 978819897 924172201 959959910 719492475 453006307 405287044 455775437 974635194 227000210 588905614 598487453 142497280 731088094 563902231 216658197 231392765 752960373 562302203 739312198 50123743 237002718 797627857 531018821 53694046 773017713 824989084 676807082 799547117 47563485 35542993 241079918 424012571 322694449 709089608 483603954 454368753 299214187 588894401 549562122 219898682 868895081 458326471 126734689 763651826 777402293 691330089 204996760 700014261 143540261 529262736 693650960 836216990 34251106 337864376 936922677 641846757 463643517 483958174 734700553 549249342 933106676 46516746 781127218 630672042 330720353 457055620 254976983 878478818 829534742 822223615 667634221 184887265 82312066 303290994 366119778 636352021 254643691 861300229 258460311 138003313 833021786 940621366 910825097 73432156 810412965 497370874 775573473 78910945 993259977 834507758 855544645 700009037 908405350 271102238 650345728 303285985 825053410 957216644 744765594 238782334 958141819 174875158 25945158 289593789 860249983 633967531 66895496 594210333 526293611 244782380 892470260 7468174 253206470 154705876 967158328 616095406 898936642 578197828 215845657 202763301 492831973 333785665 973218172 39750710 423261476 951481777 530807608 802729218 984596620 88110021 146927642 500261049 215493720 255221920 235134369 982888448 682500203 390845277 561881207 240253389 710855005 318632143 379606758 377032888 582215192 326990614 821864138 105682390 835463894 621673977 79585861 601685947 825433758 90219407 819425061 728367397 727771111 725080135 17538917 251578289 726807260 647480071 901564408 188220858 443004962 947461561 831758203 814706491 517022561 966962851 410309237 265690815 214927612 521926658 106489733 791833110 140493444 293817488 363222515 55044597 446714347 618290709 243596511 820170037 111500216 466465330 692122537 417998644 827723164 191995849 584031576 477461998 950039650 328106976 644949381 322659754 384611411 952863521 748316862 494402731 341605008 272647888 639354956 279845431 9779907 111987920 122376322 358486793 956712938 310877656 632777414 688389215 673044226 731614772 793669826 236696996 594108823 854445131 146200557 342842281 149952989 375581671 392461550 564387389 705735393 430440906 389536542 762346214 138865405 183115583 549809133 866378621 840948873 611371600 170545291 766398587 8210255 451708749 239360039 236356463 557144131 586270481 921116030 55178720 10893282 831548104 570922500 444953082 723810587 15896091 623562097 351135634 242077197 573644233 709426692 634424978 999359287 433083541 10053289 890295488 240651712 946391731 756521387 468914413 720003015 495718311 34998104 59222196 473552194 864063209 115270093 980335630 379295594 571785207 957417960 21947926 150226351 829321719 499033850 997246115 654744301 972798006 899191329 887669247 735624678 63750106 436470390 77739552 896390024 374144371 715222709 270634399 794927898 891594922 667561338 939709024 736337540 458803545 708440184 969743861 470551700 135826114 26657826 835888268 546229882 905531817 941645581 72697740 778977808 875956073 389855872 959607956 237351477 273808730 267178906 835252153 237568451 673363194 609596836 211627500 264603837 290316563 106628883 881086045 114907770 894057457 69857084 453725930 367575470 759566431 469072765 232165075 737913996 542797195 539749244 60290660 286111121 895489029 165618406 774523055 349150953 203355579 65195263 987433258 183152765 151618905 426111953 841433475 323145952 938462304 775779393 816263156 28672692 549224702 711962220 722828965 977700943 480200212 993761879 51014918 330140775 606520222 654831190 383546029 189242166 677104412 925997614 953344372 513871012 408490284 131231531 102484580 176392708 558127974 601532209 452081627 430854650 343087525 652822579 587546557 864406103 466720797 731185266 578276419 230989063 755035730 319601886 57913234 900050548 921965690 194972048 279296452 34037335 628749531 307736223 231896024 791040862 593521837 93621315 382576468 402896707 618460059 604246957 167654960 75404012 694919466 486066014 664655077 39765793 390635531 319116476 505467221 569620616 399771459 171249321 666514247 373129626 388398983 479147530 184926247 779717352 57508818 718801972 445827368 40198130 3856886 113847366 334657713 225191571 464623859 249739469 970720654 87942245 215160035 77061391 105029455 426833219 2564829 140508243 641807343 24476332 11600397 285630112 569817817 661727808 65392168 325166083 693188443 772307360 638077749 960600102 493942037 862901539 201163660 611182566 792505485 435313205 378017921 842603502 912503061 688836067 532806461 961451071 35272750 513095309 60894631 438889011 289322400 559042565 738971996 86222472 436974535 486240754 173072628 354766437 231333230 244088888 18037205 528383360 338114003 163367990 799864741 589778717 735591403 422769075 252325777 46691471 331456290 852084450 416755746 899300205 962554255 300713127 703083847 909134217 476210051 339759930 690145891 384535162 755249663 505728472 923963585 992491312 3022491 476570250 137186280 547196105 616093754 833806565 431852608 292396956 281601173 167126986 576042891 872173809 311783016 609748842 203261075 895008780 21787562 586069971 301029695 175229078 645958098 983362942 329512025 531896776 30139118 534923036 491225192 260025226 505574365 282941999 381106733 346360775 982037784 78852904 332827074 44990917 876164773 967357370 231074544 12924913 779928667 109737017 370259412 921467421 309303205 678745329 231201598 177846746 915075681 537605912 979404944 132000497 462514021 784702276 451672587 532092756 313861907 53254563 367307308 495222501 427031143 523015140 411009780 240376715 956383555 711390615 505232318 337796854 776323467 178670712 18563294 507471691 202569142 618714595 463914552 4014760 287109844 420615052 80737251 205686496 115400343 310161188 130681793 569129925 634902144 262435417 938617436 853138131 12877901 158472708 73202302 222177736 653837788 553807603 309601682 792535658 763838571 342267369 462616595 649071514 593194729 986030045 605431156 478266094 441616504 946200007 132324967 368617465 648872252 746251970 814163263 557381215 872612554 688225393 874155442 690328960 769388402 460339316 262300296 14518207 187352764 190658783 609750782 299421689 511130880 611163159 129699731 881834519 919730923 96303216 986747940 777677647 129709563 986492132 411113778 531890328 976664035 977718931 978978857 145457023 350432306 81203167 68283527 863451308 791653205 21682913 914045105 889624256 765705904 238528237 482429966 56733914 824983315 967962812 849009268 132744986 849005542 521741768 66673352 242495563 252545523 894435140 331045127 636007987 771489651 753474516 357946231 467599330 432258071 392629814 987860211 445237628 498499506 425243734 395173413 415155843 415958351 689093276 14556845 562200733 364205788 198798522 76286391 255785399 249740927 501964620 866157185 924041912 729993499 453506804 483836489 59765940 161552741 396896866 699010608 890627830 931594602 642896370 527110479 233598746 278469071 716221381 798355895 603326316 49027190 554537844 552236336 594604728 272368159 368227774 720892724 796741198 237469961 160429955 181429663 565202536 972059686 912815360 431313527 135883647 102734080 301541424 511765063 886597162 348924052 727195593 259167083 746152605 762316643 847302251 588200832 13999156 473269670 615426087 31183518 868948197 822400132 348028569 715426293 652985438 619568065 146680534 499154396 80686046 987272676 292215344 90650555 294648260 594193876 89447242 231495090 496258587 82512894 837602850 193103972 508534064 238168105 203161244 336471201 191322291 508186146 488357664 237681589 36770640 318661109 562670648 903484262 524874904 667337046 89259660 798245763 586459798 987394673 808876473 130575953 115069277 255668042 858062316 210073991 939482313 947650868 977284898 456813979 297207040 348431816 478648900 225038546 427994965 292690833 270743754 324226052 458117640 70539195 447992748 145013460 387514916 299679616 960905427 216762531 83700899 799808146 16331962 51048335 344806386 614629039 551097709 961647685 775384505 966864115 167636901 317531823 89357995 666460148 224184436 86104310 563597007 675117515 634174054 165591259 469973627 302002638 182838678 411246711 922559678 632997835 746720129 334040949 37340542 4113057 376918838 891513392 164835719 510204112 662279212 483704349 538827686 971891435 602563007 524012481 883613196 429696816 100159157 561097203 306243646 351429284 837854642 430219066 748927858 132433825 205988185 182987792 691084420 468850467 72406649 324176227 560572752 841486505 610584903 809243479 562806522 976820657 186712108 615025802 864519048 312436722 529028379 715364637 323362960 104863166 55060865 545752896 588604604 340531645 263465204 525654419 593221731 221945160 827401843 620798475 186972850 368120174 249277216 953411911 991501108 916738862 971384066 512919091 723089345 252403815 671682784 530159379 767076313 766868864 386601563 89468899 458843584 406679043 109378042 984748962 177535302 415419647 325192577 381221536 327068178 654258606 402820490 139833775 284477399 18168312 674101565 508035355 239572551 969036338 693326104 924466543 31529366 686863498 526603229 657578246 299999273 65335040 892406291 90910752 814951821 106662685 642338956 681211954 904059548 934563223 317404963 218960000 449350355 408021854 346377911 890538772 585104236 481440122 793694407 141737903 225468890 188417521 495837703 452616561 31576865 295614759 91259654 619450259 129097016 324628654 635504859 271294631 121951236 752855018 569709692 389268887 803787082 48927911 291826732 51138349 639639410 246405649 492026330 437625984 200550852 224808017 649418535 776948584 529867667 172734048 989993601 796716947 106196235 258752704 566376988 337548504 673737549 454509382 309177368 149648177 956215952 818171243 579654133 643615786 842941050 145406872 471842186 583172422 159926318 373428486 535062536 863420590 210084389 744362065 675530527 557551199 554849925 751843644 984706514 14042404 974918399 282273313 736385176 821689373 961657098 819461848 454098687 120670138 329560693 256677530 859127890 293906355 169792377 84762373 449075063 435202194 858382086 941179568 692682750 136212042 337588780 294374849 215475919 708880597 426391609 912934240 591979900 503744424 582816898 811461676 836290544 319675625 840466623 972027129 28344188 831778135 598782118 410930715 359433212 287081837 421000403 475161281 788636067 545036942 406584927 408645989 987771663 21616558 823095727 974122138 656247021 714333857 723912939 760621402 503609069 559924294 745140679 973474033 972912750 278680194 305432515 568555630 66512560 196071191 308317043 661946606 918703078 780017790 690383927 559110294 791756712 46235397 787480725 717777525 186148247 352606265 169436814 689168973 748868895 638709443 438035556 939888790 693226619 808101616 63171993 704887398 647072297 315861937 851747737 440829763 774226947 9188189 388154020 897349018 150791112 598989222 573770904 500192443 860473016 965956615 593592085 201195504 96366068 957917536 537094092 39722342 441107322 53093132 365626608 305204906 544882612 923107447 926044172 523598844 544074183 323698150 691208887 614945801 185039172 810365209 595426028 787787888 953977644 585779084 106887194 410499054 993557705 49148771 434581028 318693589 410363649 102100784 304975079 975315978 117497774 123487261 548990199 411435456 165437022 701871356 820205663 371212188 288270096 35578349 27679457 304063635 557069084 106041143 60778669 26024590 578583681 251354501 239126862 843427859 258672589 922108942 577699926 160742866 1195930 536257354 580691283 741767648 893650710 574886224 781487054 709983420 302361458 304490770 788924707 47058547 116807300 958011078 316803647 924311546 312966534 522371708 88348778 460017260 616962824 512261285 201931534 438349830 646406419 854184469 937480806 377429104 916606007 821497689 875456497 134931367 449810730 968831678 186623857 866370076 874379175 183214023 160348404 588434687 389054513 3742614 389770982 488466518 694635928 522348538 177438775 87238309 756205263 41505324 707637965 672703083 1493504 359204624 40050718 353818079 533391225 142525286 563733848 617799478 131245855 24666600 130374485 538440621 783824771 394929233 487184970 330200520 291528197 712171052 547959604 17494787 138851581 777355489 593340946 337062436 363123767 995592693 714907771 145067167 938959635 198194671 174407493 771592274 220969915 47418835 265394860 786903458 798944064 144337796 826215599 298731394 629958787 196363657 931605171 488535807 402284160 436033865 345337588 409294687 760379235 219891527 878843541 966296426 95029396 949620028 332715797 923452212 59316429 115698134 258758647 728341112 271555855 920853663 539704446 117306388 114985902 980129953 842964139 573603344 721158348 805520499 782650079 979436855 675385530 705952132 166318721 782481045 117022279 482155899 790948778 111934710 299044892 365287790 5497325 900268565 191257817 441511565 459288346 965262016 481225951 899955038 42502764 45105890 312270735 801856115 353928861 692499324 595053079 94135530 759993127 519693918 381022095 654551369 616070758 97441158 194985184 382097861 23552332 907397829 706487680 72698025 841196837 320815152 878538551 519944730 643167336 233418593 901609448 83056301 926004268 484436158 695293668 964539648 256253410 565611792 295869555 993262382 508295506 779667422 90828603 28557776 973456316 933718739 596132203 406793478 860454804 366612296 577995857 526286876 855450018 437609784 40750157 338822295 464812549 456475022 797649714 216557013 453721529 438101089 240019541 970910962 779338432 963666640 902357243 85749659 824795341 112040298 564479507 114562269 924333390 922501179 484959860 413470326 802277254 902319299 264624136 177433832 665443351 822219968 772966877 68607043 46668833 236249606 823799866 409285586 43506993 428914004 928614389 490245868 922160165 545680475 348886433 13232838 410732131 219237607 866465783 882032507 958567314 46634549 784484499 94471049 62313865 371819479 735631352 71156200 963471468 449674670 351683216 979384241 495160396 998878145 111003820 956208097 935721554 297569045 968197662 463553194 982086318 316225626 62621311 260383799 735823717 807043120 93353436 822491816 81928030 731928718 128806885 142671184 422212496 121405632 117741126 536182676 76834807 806769566 211116300 743921797 879955232 17138148 6676211 761955093 839976361 554721083 759705508 303794725 658426976 214436531 83991272 577456710 853920097 400307608 101480093 65834991 582361642 945297136 95932380 273058994 872594718 354857641 206584772 804533092 373471709 895810157 461828697 901334514 302948871 682482797 816028067 99278863 603021210 577460588 639710829 335806434 480307577 682080852 54893129 51287501 324734320 689669871 877968522 958824255 601892085 335839548 446530468 986926647 487342496 882433442 515723759 763127069 16476531 278698930 53766851 873157054 248442944 520410938 80230492 797423034 1743860 714242130 834725109 16588965 492979284 196991607 140534551 673952071 714932285 845393967 626165349 148086016 489140395 139956465 89591050 514792064 832646492 28264242 375753364 546683523 466905653 168055701 665021526 436313922 159666147 355724343 584199143 802922496 525718642 709368013 245879222 384999718 252478387 831484192 391838966 59858752 315787631 500999638 822274748 151408992 735384285 821698565 703219581 746329273 926120865 8551664 595292335 214652465 650713425 482257382 764277854 348000082 553248377 419967549 672969725 592474419 651709320 14429066 744020166 388417799 841618867 579403474 624852253 810485817 851196176 170331336 548552569 712496199 135051799 440069898 932376705 194463461 665166358 533244114 466870379 534517882 788848105 99922610 380368373 118531207 422835660 228851752 392245123 522060006 247571538 925015616 19600909 544698558 530035242 485124900 451808604 614484628 857778399 469023858 332822552 649630427 151745089 35049834 16089478 541750763 218514700 631669000 604454097 757250072 749170834 65986990 967694830 720238691 862194447 681580356 554271690 218311514 318280100 26282240 906718236 564301808 781470276 803840739 477674024 667550104 857630028 1757417 366952351 625698322 880629637 266487332 820804806 132803858 303151669 237564590 899429569 611840189 214556800 370948414 246964299 186340959 152976953 345008201 357383262 320508941 808942017 238804976 147288765 919343637 417964962 386935728 252796773 540733410 130137631 750984823 132091144 976511268 732983984 365255743 796286867 129835976 814710212 285256524 532536619 350316930 402546575 149302172 741528274 966382045 882328783 685629172 443218088 455489113 601328050 910985375 578081411 444686072 107786967 562128324 497611805 221716170 798990568 251333895 334053299 347845922 591150439 525429641 160459310 639131036 242216099 373408337 97453071 389942049 765432294 976262862 235404268 796964196 930858571 958646952 700302589 767433480 429203570 111629053 521711592 107140924 931688248 27990456 440294993 571952362 75860043 936707736 41590016 981775161 53652825 480190611 486034094 31645387 794284077 182497533 454145931 955787009 784813397 586796606 540850571 748108180 688649967 818203707 645199025 48321331 268185056 580484259 220833456 820218022 168099792 372705843 742428648 825191325 795919547 345090412 169936320 304520996 991962454 362334803 220601502 284603685 35838541 614218392 595915550 472264985 120510966 937276097 533744123 999666068 794373362 23201124 761218255 363575104 376220691 621264617 656013962 570316792 536150979 781213885 846181326 484378870 721587784 838067222 525242808 552136943 639085364 834043821 70456329 169387950 49645899 330238656 175664473 222047967 277592711 11149836 959104596 645318885 319800460 653573529 417029191 533795942 362802501 840418502 777940124 874062988 830817256 365083224 248562450 870841881 326545007 196476818 260052674 938450027 60282253 313515863 507517640 61119659 787433552 818935419 218994355 931623609 423746992 25912034 362651875 402507765 357257653 835097124 955160159 133007163 597686027 930707062 412541551 346575510 566119668 146906099 694092000 942188629 513080178 914914143 608975219 718196221 340835172 595233669 744900027 740902780 622781711 854828225 175015177 363213521 594388779 115088986 20655365 467339394 971697038 99264948 487241518 944457235 434046831 596672708 816512856 929354334 199274244 100350209 535351863 488270412 683108247 414838716 793140414 825170717 616645187 751772475 710668893 906784321 323916853 664902850 382683530 979704253 507142432 870179543 729839316 237802004 788559951 597574797 474793912 828742520 580297706 9054590 348560433 13886677 508992696 783753814 295046092 443230837 20416598 828485946 232968077 154637905 223393358 144334782 630545979 627537188 99076015 966571467 148800630 408506572 504029439 446768140 999667918 180755484 345523260 797437312 146365133 284219501 644349433 463320827 944931462 84971904 617739415 768006839 229577854 353903845 296903570 496145620 87305524 170905617 132026389 270507650 876184581 132081832 954410870 274656696 777914147 309511775 767338729 792281809 38368788 247603008 941509996 453183580 286521160 450744367 154915680 196124893 377935657 952972832 973354204 822033490 266466811 755103326 817342957 823927228 225318480 556080653 476771287 550990140 880839870 341243749 189743485 169830141 603678933 756030480 158916110 956082248 626798026 680388253 267648001 165096020 653846835 112114218 240403551 403679618 720934271 9095833 386998155 793493157 839530427 712830597 395599257 960130089 975410520 880282447 708786241 878333265 961279656 219355123 326212808 272066326 297253294 176976991 355605436 20607480 10040807 560553788 940662864 63357304 845222946 500343503 873384747 371539505 762819798 387040698 217717004 151408918 875385217 329960598 184042347 307597062 651466973 377418608 510522370 236011202 565877404 210263653 367208946 481353105 729179509 301628887 658532758 570120432 82549046 938077829 127215045 619878608 186961905 165653262 941937731 158737608 145742412 358342238 1446070 688877221 324426962 854286105 791287417 580290097 877117995 737271568 278316003 122097525 570306373 897462369 679430468 920207427 141815629 276517562 306290419 109408143 187449087 825155818 43364011 562494012 380047804 417419187 119783678 221948208 639966167 533065371 778159524 34909128 329095253 635461667 507968794 114856922 870854738 729358486 417840643 252001600 756475735 92757366 179442447 860497908 720671352 618386114 374041329 947102442 161387549 254558939 107377055 844466391 387780569 111948197 780463434 626715958 162885155 538011294 970824224 751564560 210705664 256376120 142348897 819168419 946645086 409188803 71231481 194555818 34374284 827268721 966913190 59297009 707899217 441991654 989512727 378784542 830820668 229840940 933655479 174806773 61478906 167838752 49486876 294275508 272253498 27259966 303373392 859790071 588508184 742843961 170746662 917908974 704992922 140961559 296567948 566210628 904356563 469671754 574863805 602351638 8316351 562663421 507064001 868677517 998439927 943207856 98457190 567482820 650855335 440011320 617342503 723156907 828191059 318848133 737063349 421788947 272191635 551915591 986523726 308364235 708743096 470543591 103273738 666495775 580747220 926633731 595194497 626931089 147481907 205350051 440046992 958473845 64667398 326727658 131635019 929621089 588372444 838045755 685406697 70869425 601150717 161883866 857430508 68754658 472875332 20562032 659689550 200278482 38905401 345383399 102212462 191309950 248098314 139008525 203161174 186170388 617177818 966859339 413136890 272101980 434246805 606158723 963006568 68051111 385007917 897463259 222170473 320502186 522554850 964633718 144999294 735113480 943222892 189227448 349280926 291467315 531124209 46589184 595241031 785457339 942275486 224130906 151288618 282085639 102685652 215847203 127226228 486332763 389698561 627263115 962634830 44958183 393811862 996645363 416584015 230611275 482629407 905141031 407195768 956941701 874279995 358244334 633103365 310144923 313133003 242178254 619500781 185071558 356599792 620857961 471406765 13411758 443310074 910574465 598326738 64294648 963098552 905527255 170466630 704232777 517500743 699668541 104492456 903007054 703780723 657710654 685801420 931314563 676723766 367208112 584187995 531062701 219662620 962554675 985617442 380791898 120820134 943954004 111550105 910680305 76286272 863923117 955094036 749976761 308688829 527753957 949489874 98008084 404899673 535381649 905439918 837989588 804822447 866281517 598201515 749598527 184237564 343550556 138996234 778521413 76116206 722661126 832684998 532698033 513769401 220627926 655816703 844599395 848715549 795596310 203095088 883125975 982458750 712529015 696562374 193151926 789467718 76636217 256157033 834776006 730970778 341660725 595909350 662518751 884149165 516732701 218896294 447787420 100205777 898770696 806564943 561771013 885507985 884238396 228981628 597688753 321998527 350297230 981886052 931014755 10488805 587650737 490841267 783560698 59344971 469567121 391468945 917441692 107835023 128204211 564684414 618976784 862939539 899519762 182076513 388240651 350225533 757116162 48121882 925578856 974181086 364057375 480267324 178732367 933388815 397738255 503363734 236851996 856312299 632637080 373650378 503745965 951859356 415608655 682177546 99063080 714455876 349282419 357815185 765614112 72078454 705883671 675640650 744422608 588765158 796464088 428811047 39538523 632626157 800561358 424418161 231837179 321380809 625500267 616766767 474291109 33082323 600566312 768031772 329421111 432222700 498171283 573456388 27246164 424263715 700797248 907467368 259827048 463297330 34777816 811581988 619013744 164587708 60349912 606619282 409222904 347323023 98074246 504239966 979639773 133798596 13608638 178563653 688104290 34414576 542352974 246432074 125606195 669299108 912972729 574834849 652811297 489843192 294094560 531119729 315089646 477851997 485713531 980854046 806312399 443530321 730288592 943313750 709463397 790351971 62284228 947961914 924260669 928382290 75936182 523776488 633409073 524712901 863622898 789521556 664902257 900221683 830990210 866682855 338414008 8164549 884446483 813376645 46419103 464930445 904448912 870835342 810401154 797161573 49701828 561324275 324941035 259532227 439330350 204149623 570315335 505046910 411113304 350634714 518776457 600251366 526170304 513829690 718547798 562215452 546099107 900340654 524604280 788077176 469794520 499970478 54209283 524850781 922189643 347775978 240106284 375652623 816989446 454741373 701582143 813059055 479134323 628828145 887541071 263278702 529215544 615462172 984572024 140780870 650444344 913033305 895273452 117495 341963984 914604535 517373766 114572812 17244704 985521829 440717232 127314469 726576257 113038213 148608196 104002215 919928521 149114845 658637286 472435903 179769056 880483165 392679611 159539291 540704726 845014353 65373395 213217822 939351483 96217773 838189710 972069294 145409549 664057222 235167249 784058201 345057454 406270282 18639986 249774134 887340455 4109555 720112367 910440756 904631198 563029769 620532404 73844081 578564377 807494794 816563037 257918196 221463755 795980950 555298985 24105867 436683032 553801898 961084917 658717310 359084173 256489028 782006270 182516536 407689737 661093434 835345064 308652401 3989181 101334251 515694046 11109331 92362695 558998568 143261364 539540591 776612992 452550105 449187439 124716323 604736497 657590568 22972661 996522476 395200162 838683177 440741368 769126025 551746399 605933574 793709433 148380586 715926841 845356605 171366416 803534218 439152539 236453598 763206133 133978072 9269702 329269591 941759050 528705659 581918565 105912939 354325653 290106953 892686275 779398248 501712905 940384055 426586454 843087272 309807976 438696554 711761093 261802637 182755525 570140748 882263030 546439736 899939529 45981473 3974330 112703535 592584723 606520566 863095026 318343639 228865337 4719056 63670613 309589354 926895706 49938211 278716450 697567993 535693714 154374619 186016041 63585548 309977752 560180516 717027560 4735474 622215472 141374223 742752016 172133413 547378476 884131826 864032639 247018871 84092563 14428760 762046975 444335711 499966644 812133294 604079625 97841979 12015298 799268189 582798328 995086110 421486650 300001647 16431080 863188157 686751654 191257826 286653451 167935313 547425325 711059128 199549827 92780311 342667192 4937376 553539642 439412709 348266714 716036870 611577282 290151551 182497896 10576904 203353504 434494694 119624523 768982417 933176982 342281620 614319529 602689984 885947095 764452271 389035391 535637870 643849845 597609037 731510169 966133999 432469245 520896609 726140820 608014254 992996651 655758405 412632964 84715848 711704513 200760198 963526192 524203493 394235325 823150854 985833692 499102867 992827130 948724599 408296627 929826985 409238106 844511239 11237184 521702182 759816590 557313753 869237869 657430796 748625632 236949726 676411904 851990125 106412069 290746734 832011396 84045998 481209771 604682007 563990384 308909321 443387546 795733133 200323673 963919233 231979370 563182654 9495012 700494524 487993839 839542111 94429788 781647206 422978157 77013968 960459103 435794787 465422418 399475463 964429949 434545661 3317533 669727118 654839041 976981710 868165748 42355829 875620420 726363012 615402982 220212257 484040877 712060284 375756245 373972003 509258288 344581113 431656634 930309751 943802423 277187392 5492036 283717387 854331127 302532244 533474964 763277984 456573555 190744287 762159074 173660771 123474826 545376316 397924845 382352487 99841077 852595008 767457139 892620403 467494984 95253013 577220165 314491967 559618000 480338620 514699409 644319246 562685554 141706612 483595883 550214918 77604983 885997371 990830780 435364747 732584184 12089499 801598924 159723901 43374211 185575612 148385447 692643357 900173790 193087003 11990721 915696297 295032691 313262601 367366093 329688426 833212067 739351750 305099725 411150688 748315220 287912728 340033412 746431900 92831750 164092172 887012299 471911452 76648373 902538220 967371024 341913397 488270479 282981185 193970599 85873840 183525976 600491300 831337109 799926693 568940987 406361920 429421297 916265980 512633165 39864295 478090748 24358218 211423152 739254167 376159226 814089508 400835377 402307853 244869876 525775742 799749771 186247983 875618389 996758181 815050511 444140396 626952315 745303487 611563657 697782190 88751621 623190931 295065723 89105240 254313927 442111053 200572554 615829309 269767414 710217370 735661995 961734604 4954656 497815447 372032629 586103185 286639638 935650243 700889485 871192092 545292599 393785571 14521239 567400201 563014847 484415826 72576719 842116685 3466879 332621968 675677065 389004346 494571239 691126523 7194096 355164298 85443657 964960734 189137541 188522957 438686791 821076882 784052149 878642048 866584514 570251075 617732211 440157358 4213794 844380603 866200801 791362125 888001130 292538362 162928649 487747001 25179453 345876401 83894006 549303699 661794827 100940800 113255386 65032308 771472193 736717769 698823518 603375213 105043620 381226648 687223221 964865611 63756608 354762763 387876077 362787549 783212203 863254944 265845886 7282792 198749989 289295243 819829495 597760175 223998281 742704514 996957442 544598682 418152828 543796885 209456742 581942741 190704039 862999093 405010772 130018951 209056552 990004407 300692601 127899070 652798339 596366181 370081905 209794733 788991711 734301764 289362585 230952012 357758278 410685863 647017181 781338445 26203947 92485204 579516243 158536840 539670070 23058710 257445955 339250109 558985069 998653524 563650878 675801411 481280488 723886690 41967306 520408764 644849735 533151755 427847654 330649894 105930938 153325415 363051369 348452560 817769141 534522455 255077132 609675047 104020397 432136092 272769375 565405456 796246436 43335396 774234013 207847055 464987916 1416901 635613840 564948134 553321963 60176489 128610012 389406823 849006714 995261740 481746280 146679083 670036919 303307099 37732369 324593568 106147211 163950588 847361522 433127741 929467736 918175853 973711822 752448426 918480404 705089141 22987669 180943610 274582532 799943923 90965154 248973271 276829961 613141666 534714841 265162548 714061876 130868553 117750345 994803500 761182587 233299317 794114229 186588753 354942992 742368629 946153879 421412785 251891035 358389948 728749766 252594844 727628711 664473070 202912408 882335917 587404716 484865599 126353387 376322142 739970359 947849875 854975810 741534912 307584888 752235173 260668054 902913607 429778545 933950312 956839520 854617300 376721605 109199276 294048416 406061069 808219905 341969311 997135927 748639372 860850725 484485235 601649622 625118700 412595170 500719072 479482504 207569388 285650140 966149870 743583879 317956037 605408984 376848479 261820101 767568607 795970340 909540026 49396033 358967103 92720632 522380755 748843462 879623431 410121968 990042071 623963708 361680097 293441183 231896889 783347832 852427065 504161326 549636763 515450998 870442121 805066546 71496728 350002770 600514971 140490366 980327251 513076263 835936964 778592539 431324140 219059856 799469887 256078117 868549500 358816691 104989237 139560509 110408892 721392529 646078535 352444003 71843038 419927828 91284902 73510560 620463271 649260780 384708650 503000048 609381080 61050850 934788889 684821719 123354445 801835209 187583728 495195043 119272394 767876743 719529335 818405165 906258486 651358821 887891517 997776366 502723220 72388247 959521695 878132039 592022953 927079374 358076896 70032287 121871030 374371955 863966522 715903435 428472771 341185334 471697 512772498 96187789 551101081 554180882 852416022 306298653 222235080 85721841 539546585 643096362 712591199 401181114 592522868 53981829 454237542 801034530 835703904 827082336 25351300 70630760 84133072 158603912 967368861 232781404 189443213 139201804 15092338 937990843 63115311 99208616 336155704 289602807 833280533 55230135 238306296 616890195 634010266 571261044 384719725 129459251 747823147 894760358 908960883 58635987 286219909 846493671 895242318 99369535 590105431 778739927 853703434 507924771 517103796 39230090 106602508 212195614 440105483 550615551 831379907 308657474 725533994 227015649 942414349 73608228 700511074 422942986 466240912 341508214 46661966 797123336 149313939 100829459 38598287 890184446 91610080 347871752 972976715 1439492 168710439 560470051 290606289 379512963 318567775 477306231 627163543 837164267 174169406 906867860 507826408 663261593 135547237 121823501 272124975 370731530 88747543 317303929 365958803 124277204 822248278 154405059 585876759 90533042 723733813 821734698 759483584 350534308 824099664 569801702 110613430 235682593 959972602 469732369 321939820 859051413 472851670 807569444 866099107 222904709 56134937 840437725 312356433 202814547 703154638 287537274 641942890 722172766 134900037 386367177 482768650 159948769 316456788 51017257 799621161 347139894 152590531 132144573 662645642 508505634 183715961 775678419 661363739 992196579 785069291 224180703 138107995 41268371 243065327 147537663 651716525 644301757 332425645 184913078 71791928 83293991 325137580 565611491 587314971 412113019 474993280 587758587 909596448 419267530 284231466 770031648 757279230 343544705 853197664 238521246 255666431 935120848 506054685 551053328 770630655 232933905 309600394 869210839 304026269 128378114 483418666 963016776 48319068 127764556 887323454 755195144 791701572 459406128 987950731 38010925 395532602 336400723 152386010 913691641 465966115 321080128 566380031 498145653 176737770 582588520 163365272 304749846 157916208 483947179 927802714 338371941 991613559 759677221 697440056 956065402 649163418 124177974 779619022 709945610 16688695 977380501 755435040 290480866 799967641 822002373 239446667 660291157 588884920 760592105 902836953 408323898 53875586 182358243 54528676 356293102 944951302 28043889 314723276 389709833 1414910 378909437 715842931 711284706 676701590 948710093 739697160 437806288 155208854 313264146 749447843 961426011 96258756 824812733 720855961 589047694 976389828 458543640 266184161 944354170 890570101 45998625 913079251 733251968 248430383 617662440 592345777 249512751 500128453 478631107 317725713 409996989 873641331 97118943 759837800 623205188 292633261 183305944 288367331 906429188 829575372 922743996 401475805 302723153 552165112 912564260 653015580 476750412 674739496 103225428 110463723 887638515 247814129 734079896 900804170 56578058 332311758 200150185 810915800 504807397 965843501 730284554 155162884 274244593 194172746 146872576 70012886 507789929 734463158 644776605 728544330 914049530 907062916 144567664 448672263 356532642 901627524 569394513 235076246 210472547 779274642 99445 543182548 423494263 521429274 152304768 498610253 116414288 493287338 468326847 331754073 353353696 933022757 266068797 326024804 258036555 146520187 721997956 422378036 182365600 335457453 565555386 337682552 442607073 323113474 947961099 536447941 116321780 297060608 623604403 116619901 271113104 650838360 159228646 592505417 555848212 640224698 918342183 999053277 645751476 954028336 395489754 860786750 257018514 845280073 76613394 185098961 196777652 601337927 457779316 105949444 135252543 145683781 394697894 233160987 430111736 565951760 517243964 710318206 751733127 439334476 922482532 912975218 626852786 143418768 378004606 425842729 215994520 35095145 507771963 600806626 139048403 823724235 735092666 383512318 326028621 311208024 234248431 18902438 337388649 7322375 509564686 934522624 2681148 560558536 922405075 108740236 963433298 706344695 276399054 304515962 53981042 90880610 984190718 435612335 521837799 637627938 166841649 147681019 644574342 714841302 213091620 587604066 190149168 218968502 657756585 21421883 446564598 132690037 301416007 759443171 560995984 924001553 13604389 783761731 17950984 958283241 387811361 905214620 932786179 442146818 252055858 955573255 821813430 440177660 909099804 412188159 864428450 481564700 345277688 666391250 8823929 366466540 455235936 492624601 743115367 126630816 428182968 840982920 665443986 640599395 688699530 507055380 767671092 226148094 522810015 790280062 21832266 228138625 4164793 582805883 197783646 980267559 477792618 922996425 222301435 866114277 720864086 798701493 642350330 917996547 751877502 118429900 170252967 864051397 411179530 370502969 800742714 387166491 366174512 890778684 506910357 316331624 249417334 280889099 830922305 934495547 279199772 755042360 180654962 865588974 532112295 298557226 768644154 321550305 259919535 172570344 422185147 387218528 658172062 611631792 992119144 144910494 635645119 306463758 894470579 326964673 430878372 557836050 602739802 573665124 265629210 861509350 256290773 910258884 684241814 559544443 834686741 821056646 759560851 607251828 816231487 655297904 418918666 823653368 167740578 952046227 685188139 798653077 644972173 663754151 694509070 553695008 510004555 263959688 407121894 683106870 160140685 292682804 617400819 145293515 191779831 366326923 417953180 226788161 487738599 995088332 488150952 975237746 566803721 857826779 57561383 424479675 46252535 12941252 174271002 770587106 907895361 913661945 247181891 227819134 184205737 75498593 556135003 692153740 146704044 982617428 661160351 933763197 422960965 639200869 243311732 84927142 503845109 48927175 771258304 85037264 497537604 820545070 772572726 368677533 773219306 838152655 251857661 874583233 619062231 87839718 129483812 341310362 910361521 214501054 953908211 491967377 748924973 40176363 700155729 487650103 788292657 614085419 925998209 578638615 817350304 160711096 681837263 388935494 127343070 584913422 747025541 820313926 743734909 190975916 572112400 324757225 202321092 280945106 826081960 394389041 856729432 185080367 626938950 73704936 590570738 227234141 59115562 238971370 687770770 759266297 976206610 465346813 340281387 652478875 663921309 546377978 71577838 308981893 764879523 524095881 172090332 455788840 94148818 527009564 439356692 803690573 148584612 472166971 782343405 243691483 798167734 147412010 483140679 831263263 921482188 446334983 19733730 129456847 926350368 652580226 202230091 953225675 875731360 60496238 928013034 723841530 709629159 936288268 231985774 858169360 462976022 931491249 240019907 394891678 808451258 435675064 49399251 730303888 103106324 361300526 917932524 329389715 551924501 626437287 967394276 955034283 292232022 829485676 570066259 806613195 410290069 420239034 941748889 867787239 793997757 409884514 684141797 620191049 622403436 210956117 443367216 336639862 799046503 198701646 332278774 329450527 828303601 607936696 445273930 298332575 454066458 322826622 128949659 305753072 271616138 265772918 946057468 610089420 892746263 314741526 664974231 813021914 619864821 96023639 268601053 950439653 124353903 477587190 908753337 322388166 983293877 163117596 762273815 426972443 455468901 902991229 956629355 728744819 101852570 210681159 213122395 994357985 379482816 312686452 859108855 182887068 219714935 683705029 981873488 545750765 558501542 645627903 774758649 7251329 93397403 349552514 962353811 281794706 130705898 370196813 680409315 328515333 82410557 896191353 800841457 449057406 792014129 759582662 217956169 533021336 345726966 688764905 899584008 48298359 998848070 353141304 26861659 822416336 607178110 975354987 293339250 443111004 668461102 106259818 538312882 817126419 662592757 328532458 252684130 902096854 741795012 464604413 349653563 327539631 434848234 165221105 59391206 124343360 392342175 6536084 984809493 943151725 914920 350802509 690309159 725851539 882613858 654235796 542892015 524980584 893373416 894329736 664213459 458609129 8457604 263147271 64505756 25144842 941160901 943777447 510063840 301466488 593931366 22823483 748749553 715449535 486428549 398797436 262328584 663961343 900047528 908331200 121072406 434174941 614372431 933253006 529345583 69870228 692243137 95986798 556897013 805848066 157658830 450358990 315512249 920642473 435832462 682204709 993343592 517028136 849553728 116829060 3367668 48778231 646469397 565179871 972763568 297971363 677905192 422666984 308882384 696819067 983422409 558540686 558450582 92346838 605285106 899488011 471207273 191010014 305394301 540387509 150431221 475812565 378879868 836449255 180221234 355206986 272971539 871688708 760904076 479892578 296296591 366991194 246201341 246840018 153237715 603013474 177952402 897953961 992647495 671331448 30943559 664432021 968688359 428897124 446132935 80442116 329496962 985761886 824224557 421987251 661111821 669777966 677171179 686030002 218528579 332973223 356665430 91452800 613855253 630923494 297719695 772069223 397786464 646672023 242360126 678610558 334731932 272277727 911737923 273840965 296336997 810444635 7881129 558084491 698994573 201206536 812376697 291861049 536626521 27944042 688240554 964720342 170900349 664414384 339865386 994202479 12899086 838800657 488676550 42979559 555668043 617348546 258433167 587164400 273519275 796314522 600959166 29712113 245424700 186452116 253533249 877477992 912913463 902694304 260906215 191999863 396159506 653969161 539294167 610590619 435270145 583294274 874327576 337122189 553115317 172707629 617032199 547129745 701907108 554536204 229295379 518706057 55665536 794299845 481000169 813129025 685475498 440318056 936980148 354295653 300878045 973870454 205990976 274815157 16405387 589069063 116427610 990125516 591493043 120718073 344230124 340242933 614935028 125538510 898951163 544164177 923554769 754538118 687207916 965519675 989648775 856562477 196049666 988147462 163267682 699853124 257382315 232902389 85435149 513569796 236819635 748981215 749391544 526842835 631106839 841127296 237687881 145452667 550301918 359849301 625742309 453946076 131029684 959532366 664059311 537402716 715930313 655912715 997034957 955387674 445985072 448710601 923523026 633373343 751330967 449814912 122429529 986706870 550916094 88636344 461956188 413217333 275645005 411218724 418102414 6664065 253611345 775741857 906138497 415336755 873621318 434945942 157234819 868870971 329998406 806356374 64984135 750475791 208248783 539848096 378512019 805638474 365960282 233499075 750342046 856847747 512122507 995131634 581174649 206659873 812742793 129494964 768953089 496597105 298025596 551688035 809923756 832543540 431101281 373569697 211576013 390898806 445189072 142418971 966725871 375014209 866300429 428935737 784849289 172237735 501187971 248688250 305303783 307944559 40831717 15292968 276643127 954773031 237917251 40044976 270752447 448143818 849727562 877618055 840749346 374641582 280517641 310125905 331044219 29553114 920409103 542370129 670318015 195924380 646876060 678021089 851878316 87697704 549151220 701287148 965703124 307392837 812683035 77959655 447454613 732383835 246964428 327743634 781838591 742758676 707683788 198059288 686881572 997836971 727129016 573559025 987350798 882589408 522918805 604688485 906826179 279280137 946951009 11131755 581186171 715791463 953431233 434784824 553031285 592065964 692320757 708417199 81332665 137838548 847774026 474891747 230427524 380055058 863917030 884205031 110306503 317959663 759568249 294377427 999111001 494754229 264247393 483797916 261458517 987221780 962773827 510889872 804900081 650153628 838521676 791561754 69027197 357939269 863461117 98425160 898379944 964714586 667943826 443619946 894172528 918035357 56932155 345601182 18144858 715125955 193149001 682025838 281852801 48712018 805581422 532473256 485975474 187495398 28073361 987842788 199985933 251292711 510013736 174536618 510775335 367718215 734435160 852048011 332888515 293357227 222622773 187374284 441900851 746773102 70009057 843410585 695345145 170221318 219964322 711204264 443533701 289446479 130782974 99065120 348033412 538244240 958049997 509661771 675671140 997839114 42520946 11025554 381434391 977241507 707035543 235860856 868694700 979784611 414814870 739310490 408493733 771328758 578974832 128634184 520370434 420957313 964114141 714597306 772549703 5929977 333508055 93254223 515675751 2632481 85987839 97742060 131855709 308650098 316409133 533698379 165975198 466516667 950603378 598135563 87852399 300484294 976576695 419155073 992043058 841605439 711279660 105142921 666901946 750248224 440698536 874414929 531270139 684049355 487565365 245100115 719155024 78453306 960053706 178006856 914213390 844859173 219802754 801956433 894178020 571602961 378476990 871208859 629052648 237708627 892154026 403381263 555062367 472417252 738460390 77769361 726355032 699462918 127692119 596828930 184336708 436854900 835908907 212267265 3219711 792098794 34879931 405596926 107155915 735615685 400189858 109234578 683374485 19767912 216727338 159065114 914888043 449224066 802384030 4301209 672096721 966442569 569389529 25447381 717678784 972087520 754814214 707686086 652555614 141878464 145778589 578944353 941217240 853540349 580509758 62533792 509961032 132334121 799145700 162061265 960516732 420867645 376473575 298241852 158357853 941650993 414429631 696879802 15699950 934511369 234397796 354045624 541456975 342448667 750305619 666636694 968231054 36450551 564607884 104417442 493057998 335833157 133432930 490916090 317523213 148276014 729867616 272500949 734876040 181786164 999244189 184456241 453018004 586067115 726270370 404495567 791997325 483796764 235905383 346407494 802714845 320388920 548640424 870998377 932992030 472742822 87031097 897338957 703070259 307360719 918654526 588715637 329462121 334677148 996663210 863038809 597714295 165736341 901195770 441915771 746358979 539343292 189778181 169831326 53422007 383672005 299607657 869927402 854509631 797849478 496101193 946476675 956323500 814479758 954743813 805454151 695556236 491071633 98853070 522144044 918868918 14258127 984083208 213204304 66388410 726889785 391774993 767214862 21486328 860989415 947450346 222091268 540322266 613675553 660130091 385143165 679177838 781261909 145469049 227818571 688170662 206053450 853339406 292537988 762054107 643436036 300464820 238071360 392359340 332918351 417367166 282081314 579161683 29037945 931165293 731037382 809722804 282087515 304296046 902043451 438597873 721869070 462446229 556863744 600539907 92579568 862396892 645962535 679484273 989758543 670513425 233643348 414151359 170462108 731678297 796571696 316854923 762129741 705799330 66116701 630834936 792711565 803371124 901769327 212702150 445329715 743621724 484604443 619325239 147242685 613176322 143625879 36424268 22972830 351442805 333299163 515917159 143003432 301127956 167957620 884054253 697801986 947406840 982743148 379224473 795899877 856950576 586337693 911614534 867204625 92436387 945760339 62205207 937804488 73652645 613422182 130546500 791055285 441861126 143983503 126662111 590297253 322240614 59438585 194550214 475207163 962860712 47811469 534252347 459003072 242408390 242790677 345779174 810615124 437062380 791375804 88165010 561354665 885838830 754953510 260432810 588339793 302177488 738508600 162789852 799722339 422326205 985374841 434560661 276897927 625687377 15420583 405367131 966451104 37502012 690542710 198948267 708426359 512970610 306136648 558109605 432317831 480883083 982166975 822962895 762697551 223300295 82821911 875101139 195696149 672513943 123803341 198898085 919629814 927465362 59415441 722572589 982305676 536967358 500252257 523435577 202790515 126227712 953666558 29139407 621434945 898024648 953325912 125738881 703375542 879834005 520620129 651302382 910656863 6515813 513492150 164016613 523913588 543552876 902386072 761443857 286514426 689355438 187871156 924933110 812291619 621248801 983243083 666943038 754575076 864427845 62255223 649137779 794132117 402251147 664884985 847388518 304689023 259315265 598059223 935902203 823786735 299488134 316624379 238616498 50674598 936683651 288736276 79766437 746413194 814743814 928856740 567249038 10392503 706087754 572868253 277958029 507405533 786833662 231204180 144834355 865608228 446106262 342232976 518220649 543815361 138348843 863311716 318261195 290121201 251591629 735637569 84568617 925660174 335219366 444490859 667043042 421370054 807836862 269129496 254786014 969620219 294648652 304306813 5174927 629766769 763569893 155508701 35908152 6738744 833769663 148503900 700444449 305472818 256071115 660595999 313223739 693272294 603766603 60455230 930990563 91308872 753855966 991557281 409761236 773001716 60376142 658984551 912354828 444046485 94890325 139426840 848774252 107470954 162145063 973514659 788970106 549736904 946069688 933309027 664005404 895981704 829337561 62326860 563081344 255464427 27559838 133294957 321149299 572780700 834543943 454760689 561630336 984346362 907545630 130471004 472572407 249582109 695209937 181549195 353377784 41067958 815576678 827502175 757488626 505382787 827802474 733411939 329540004 500465439 307197710 339725712 355557799 853341480 284693265 711751463 265504246 45091686 159646667 96352377 12936063 605009059 257890691 198159447 870547528 785765756 587886961 917625763 736632151 678578440 716285925 662347042 585196024 823867596 795912937 348194270 134602748 237592911 785917643 71983075 93143845 368452096 335914802 22463700 13868719 116630400 317030983 878190854 901044175 529355336 887885842 368026054 902350073 401231477 971604218 688416998 309228432 518136485 650123737 484505942 882700767 552560452 233513276 156258781 778901091 719798755 427696718 441408707 648290118 614571109 542539142 912724355 366039561 15244947 251888464 745740594 190950783 830660691 636005429 831567659 915536771 984944073 350323139 693598220 563733429 836556236 635350551 172074025 5296151 640341035 904648032 558113076 838888868 384819865 418183598 899119023 321820193 319984428 286155717 58186037 386398626 264192351 943945892 914610262 235233233 717234340 615103852 831138295 987802203 562384445 737724241 795054743 793169073 61943426 24926080 554859391 189691709 676388755 493347731 594119157 73967972 290057649 502884102 72079046 174477843 241504886 657909494 338651973 903382110 387068871 995267261 84705233 414579491 536509879 284207993 832240569 370902490 481446057 479494479 371964945 322951387 344873673 475200811 245958090 875488978 604918211 503896541 34365482 554177943 991448997 114313220 44298117 733495769 416863798 297475407 413039366 454992243 908639958 795029049 497256929 969642625 529420793 443726273 306123266 900330990 120229481 603923500 779097175 67606237 921129832 735381988 756353822 931989540 378551387 421849896 786023174 837016585 299560373 823687688 7017009 162805291 914554980 821702910 301045677 327363472 751475946 314204119 367813926 126202106 324245860 776953017 993582953 113013634 128606964 4829298 364353469 511149759 716556151 741258886 582386236 284427196 702773140 113880217 821914294 712933764 529161347 379881026 840860152 857100716 428529908 661001336 881072895 63392424 984406732 440658933 444059815 424838714 519033352 798850951 341323947 574338383 531875725 989561828 570045578 783532679 347205970 609743158 86651407 438661084 359329756 228057996 162415427 507706289 793530375 399207854 423272471 222509606 932645328 67951113 233233279 13995154 639768968 57197327 203219923 406315054 975493591 235338274 432710925 77495971 855455596 877081776 553374767 545232814 237129892 993573687 355186323 961211889 749320455 964857340 748091161 549596184 666901136 179667162 710832268 299230396 584125560 866080321 248867322 867423832 766147432 697161683 187415531 147235232 390086005 445716083 352159034 944932580 32577572 189633682 638110293 613145221 340680379 987511280 980468450 769380975 630823478 211226950 317166583 779898075 974769188 202677059 370238782 49403389 590521429 540567289 437712387 968728227 13578439 524936703 311135604 218729370 663062715 253801793 750501883 101150568 388024046 597659600 869964132 885343554 16413607 365190960 481907862 275556285 655817879 604776470 71432489 932032064 484246238 819634324 950336984 233104136 678184767 143869072 347185764 337929252 691569864 946315214 439596442 62036288 511531834 268084421 196657308 153867054 338334435 338788138 743469 372115066 928366819 563215943 969084051 604566124 748028441 102591598 37691317 388410724 457487322 602448450 585946116 770301592 931704979 21352987 802352523 203246600 554881308 135592979 370374417 308272138 998609214 588365382 829157323 879824356 646629205 722949639 128224249 661425448 346823446 604929265 228323930 234915340 452798266 17477324 144132106 149168393 985328506 809994898 403882042 470752375 48447632 850978051 20866969 52433476 215034367 894214395 905702723 833811371 330605846 875606301 299640325 395736689 787550596 214163710 655651767 117312710 32050896 803793367 167366044 98365528 675653458 911203973 200843934 240445503 961433345 64451822 341236262 49037072 495107613 132337133 24350212 640076566 769505462 961069206 119414966 655722113 374864198 152605301 445737490 923100822 519194325 977856269 793563208 671738759 24349055 479503712 382836883 637646741 80638342 467490046 371439125 440193007 986463476 766934357 570751278 623162947 610033997 329227413 829801615 664540766 257609107 853254558 428943205 232845110 159903504 982604729 196310334 22042835 317041212 947034209 636129060 237863584 992974518 293535210 814238973 439564374 850875228 61628909 660923848 980629150 444598222 348238968 385332501 146240299 910457793 932942256 618775455 994742618 997973892 636407784 362190375 962649423 327283533 685223955 4294605 710379240 636165762 276323822 760328598 495761640 916405445 491582323 33692626 629842688 926202236 662582090 201297272 405372638 842467809 40489880 703300995 77543094 226700352 234127824 984463108 72605884 895707556 773245487 73846502 529829830 270171535 544880524 580191955 427943386 180024955 491849476 620290224 730738096 814943137 538973757 165439266 73667164 523575630 706538507 742349249 726795783 383480194 599580685 797821947 787287780 599348367 550026164 593382355 351364639 622654229 343393966 716362761 385139517 224494528 897981998 303908994 840145634 662070968 47022513 49361952 583923513 927371248 853737283 462398713 326571435 957659821 969141300 965045743 741971938 767959536 667995431 591374344 620441229 601411331 251192245 192366411 590657009 935374295 850420915 809701896 51155449 314933028 849021696 512500806 552083432 834362311 25867092 800118003 951792225 591391572 928717589 882169709 959489532 664341461 479208701 636443645 83344721 138481856 641287170 603843198 628042269 827896809 226019955 203807490 502141775 183312507 727998352 906086389 756934186 715114368 961967197 967462289 941274905 986404383 778660013 191891905 815580280 8685493 954047759 392271941 103660465 654452861 207292762 879019718 454414375 491459781 781975370 868695388 205367772 321326803 314146964 216713778 968870876 450471798 392666330 557484417 642883100 422384668 976019367 985833921 353001611 370490125 585179597 401273141 377306435 392891321 273983575 635219565 843713517 362319106 212166125 302217321 808210505 617279598 719223174 984201008 971926674 977142238 251162418 33276348 86883800 463346133 18678859 571976703 811513135 166848018 429523984 656141563 514624437 492291283 561163019 884172584 760617610 442393086 221093450 244022764 357036584 184888260 496613462 44136605 70201401 636097815 201041978 177147012 227505518 71822481 773559239 435488067 259569943 24829229 227899129 761853418 613875602 157391971 27304988 827614061 912687773 156720620 820352494 801962804 605189899 691665929 868304085 731377229 694094168 129807213 30586987 915456956 422098254 41655916 364421827 679758278 597820088 608616115 497476202 333476453 778320926 643094194 361119863 407798213 374832077 877276373 153744437 839463199 808626080 421530014 383314516 66687379 202313160 490578025 362149278 428524099 553055732 512930026 222647872 781998827 413085187 77052683 446697821 233508511 645843953 60135382 177697011 122956376 282685414 377743364 660950704 959044596 636312098 161415085 223463685 446325565 654605950 923233083 909010165 763530702 117959801 551937742 147897151 428199769 695959524 50951902 397086631 102876391 874957659 452089061 79036447 549567448 295736670 159206754 646810027 345126669 959464235 353693313 534342980 631172406 359599282 761931497 363326909 293330007 301511430 452122321 281194459 761979350 524433870 957713714 425971984 606975978 168966728 99795324 503257091 890237066 597137464 522910875 267461392 582197141 772421565 489679761 501552323 423007653 560898441 412984182 400962581 773452290 982637515 829845435 98911091 313977902 450738277 373708087 601595848 312631857 540076630 403705668 566314410 843069470 682281627 141225213 715824467 212828590 447819799 337604390 260459648 18735238 435466885 817462624 964601905 529037023 218091920 888167079 655584121 40207988 345288595 821302189 579066674 585138099 581287806 111337144 372635462 157090111 64289049 122787125 240485972 364335066 933950991 604116583 636820913 770249939 944913527 907451036 184463038 954498523 914150419 717946976 548228399 185946717 241268679 864689928 19920077 22435150 247406495 875116485 633803287 782185341 319923159 978331779 780223247 677011979 675112127 896123674 686171253 990815472 627016082 269227091 849391530 977801132 735522800 948668222 427577605 550841428 593919425 139128350 383730594 222148742 56277602 381576837 864841455 729618317 662459030 637099896 315137011 500645725 398883151 311839223 857502250 665566201 493614342 664898658 495050782 175679618 896142067 578554030 909850809 562160545 585760113 552166545 171312097 116011435 973516952 753452979 90016674 900064240 163486535 452441828 2857307 427874546 439932608 970134534 817362360 22683984 860559714 268838985 563242987 498439704 64621856 808878270 512720602 807685113 33531673 623539269 359144642 526957148 530248064 215551024 583935525 459723975 105713663 197165862 157580456 336070007 551169380 665680258 207505179 208496035 331938272 313984934 313871380 789715505 355268237 448680414 71092105 820366050 985101131 407319911 869497419 382666242 442210728 951021061 356916374 58593358 854743770 841204096 10528732 822311715 859842498 679477724 954689549 970899544 384992817 548271949 729578262 566451958 609777851 358496874 852888836 125949623 746125918 610648233 256739313 788607955 265943771 955198077 43934326 906174853 769521820 883955824 87817942 533475439 997841260 958525978 651219905 473932790 949784728 97584581 797189128 667339623 344142170 689834693 873506798 279127127 286887548 568135807 718979551 88727857 486997516 546990606 177375552 637234223 801549399 108100094 250136018 903258003 584180093 616877892 322809227 348582810 998548785 864468652 307852761 872792031 538732776 834978497 54379452 245639869 316983434 902615655 93212347 938915125 526325693 859059446 17272791 741720267 358410065 960151214 921950114 260411314 231385637 274384506 911276056 654319444 146336670 634951824 706167205 537569037 423973923 664440326 686987133 881317498 408461451 196392770 911611152 289573743 418356248 288931848 959015773 549720586 457638909 58973907 510169460 586953347 180158532 411896831 445800336 107472435 214620777 976456450 107017478 530815578 97073210 186213921 632212120 168438129 917147437 882823496 265849454 764453095 496980907 493670108 354988515 222730384 427035678 796447052 392854879 370294374 718181378 608842348 413601706 716380430 171245552 215237243 780846622 684789521 943352973 958961495 705817072 672041860 867425149 433882074 970202794 938047160 68284155 429425192 567407734 421088893 659120491 734746501 57114879 83266332 479839573 272986616 339791751 528061255 693686280 813173832 287577701 967603008 350142727 604364785 160980130 787852635 277957839 92802280 635506455 982842120 925818908 813154733 530994528 356397111 906036843 436294021 645443630 526123365 985604871 833174951 958395261 980118696 10411719 881496953 403563640 280568713 343296839 573849655 130362168 326691033 214035991 450691226 628958743 861023209 660468406 846632599 769019994 459193546 477320441 670603662 54534324 777380962 137227680 839247967 35072591 697430950 435488278 110389007 700722127 116215792 204867811 353545278 67378067 552921948 896300016 507018314 494923393 98928502 904440795 793086921 767927680 469938266 967259372 202109239 965253671 756673835 281746206 572335682 633806783 880207526 458405843 654718786 302704214 263146989 853625757 6164821 775562245 741144687 918453220 330945395 296457023 934631015 116792152 606383000 923660740 695999484 310871380 728108119 648341725 885763380 65159008 580348819 338913921 832600257 276906086 897824018 777150010 602780421 765937816 665204581 695992904 40430543 579264031 402201703 117387838 448217233 614608145 674097831 515112389 82408558 308181482 213863004 876244183 914266968 267575473 439022824 70149498 64384597 985002992 208510928 299587951 42778305 748644035 457109236 582934802 819301019 228441156 591399496 238654177 339534992 100787266 705030267 960250498 848956283 285559963 761323242 334319870 639816123 163935628 715007550 273904487 623052322 255364428 549679032 400478624 360017557 738003412 179031585 20985028 168733354 683332497 905845457 980819034 603079563 389883288 68365235 862834126 323352530 250117592 711228254 871379646 699614773 40019115 130084447 612387878 254395964 508001165 976514028 123624235 631999686 138485978 481512384 39490312 958171234 70783730 908667572 487461760 435045672 471027556 747397224 772822959 207356735 740128047 721447469 417272950 467821288 532554285 37313721 330769938 394673316 991869232 664007934 400791196 663435311 911259567 600762539 290677037 8294459 992893107 427035817 303476667 768655609 636036270 418591869 203504581 758929429 173285329 543597351 495401348 881477612 452585019 529375291 538306431 174447149 307129050 391089068 861189306 365461435 116890266 943522584 382911860 291404739 98743593 145356979 283636526 356084477 126127906 658195791 492542139 609232734 289623601 464461331 341417543 806445809 107695387 925206333 414757833 740256586 125594057 297975261 790020947 83319638 975045499 633216682 314036694 330861640 668604776 218252110 91452854 470146575 568041620 215262204 881528507 174171064 214757279 860636004 336083048 168001742 74496542 770917961 37468721 214738889 77325367 433356922 271375888 932429903 273618721 263484004 316585817 523557826 165919177 948565824 403036146 375884503 386536742 412128671 975683339 28225923 500440162 424416050 905664439 680003239 531718486 633407016 350352501 424075705 341550031 185507039 561109981 419727504 337100184 712404633 948339906 638043088 128681011 740587461 35204946 975914193 112689797 519323187 817044921 54035666 619039442 915736942 305520292 821793456 782002182 976324106 306928576 36573779 305263651 745968651 176947613 26483868 813101983 489161250 804265929 273488953 364364440 835123075 62193638 602222052 225530835 159903767 951105067 880368047 523057176 836109614 763640801 495168477 443830549 375263081 523436242 916516360 903817049 873900287 514103453 682950642 243311821 358906886 652306573 20401165 200773139 949733236 673586240 281999242 512564321 471448158 865765594 213264548 588162825 131740740 409509206 683561755 231544717 96920252 165158031 983641084 136007177 288824321 437861604 399726015 406839516 693727852 135144614 365310095 499541185 22570997 648865412 165892941 26339495 724333704 880552509 998513402 575834799 147202167 530824085 388564608 846825135 270336877 371887103 977944254 849691687 422073204 65710051 954860253 417117150 511374297 440591483 351366275 415081861 588364362 432489952 627057434 527890046 410133102 57776530 162891503 76454230 200170972 68264193 41715447 142179337 582084050 777486329 247654039 868237070 813655937 714014353 126651376 998682629 856791485 468676037 934846353 122233050 632254151 14275444 681505010 430249200 914354409 20853589 696009333 794818226 485663933 398433720 347953632 344019469 865943869 530796617 892048378 309281192 850531505 420024633 961023060 443113469 513938506 886035839 976512746 213361164 690887685 62700791 837346574 614988500 907667311 430152913 947318791 277781858 360582372 683598823 862180345 529872251 197045784 956261166 976492019 344585507 438832704 614787708 580783703 773821926 978668371 744397354 243454212 722742533 43908116 139421033 476635474 215657608 36973780 183299668 731824098 36254546 826008875 529152395 373356979 222282069 132494244 22369757 24641788 168739293 79113334 871285682 673216592 320638360 851480931 792415559 319939416 960666797 126010467 431773012 185688196 352324612 417716291 340586695 607102313 474370254 298162897 651721228 276458401 893827933 950745124 751613480 578161953 470333570 157094509 579682135 771848548 894461316 426072631 579585410 886111315 432821260 182801994 187582517 842049901 441883177 648890770 495394427 791944119 765570587 205032959 613177299 612799558 130583609 183294517 561979219 618017262 368019144 577959636 628389218 66211856 446409259 660576566 371752278 81295318 374408982 571984296 425166581 155518946 435608786 158097264 135209056 414052385 823726266 487636144 795523859 234812397 35431153 791438807 307810130 994350852 876875248 388246878 880597646 242944453 984999544 155795594 104616387 551655079 161364955 643386865 955859945 986280689 270693756 854773278 680887128 185402940 91837621 846603214 966754202 427320773 207725103 364878914 190577809 66528671 688539478 46960886 442571009 420252373 712914771 119691647 416694262 833647393 664283999 635930903 39773158 688483959 619882437 852388861 996303217 460015190 669392702 719564151 912573270 443605825 294147527 218375128 808615657 403731180 684776329 501035426 536523227 570738197 642911249 771966891 990490721 127980858 207430918 119428454 934368943 589456935 13073274 731920078 14021040 696763811 707552139 141626129 407885476 530788539 493964276 844430795 562136767 299233347 285636555 87502415 997460608 318818411 292030516 905080328 904428543 560965807 222889649 881852493 274141 748307500 706619486 175956268 279447793 559885890 654430575 739324426 468132504 20561778 941148806 525470583 184876117 676531168 39248809 381371076 950606488 3320487 40911567 822494045 381500595 430426397 894513546 636491991 292518090 440423865 584646337 235055906 971421825 997885201 543241939 504047267 187916344 355095843 283168802 215862434 809448473 131804330 355054580 964019935 26505824 34581032 67294579 994490453 722833865 378912433 632883720 927056624 592531484 625750262 537531586 116334636 826383253 364286904 597217806 134388301 704437321 110231801 62001857 414667880 716016941 565578730 2561544 953232377 751098657 552229378 812345033 645420230 989444040 455885285 313921793 68895449 688136867 595618433 636051132 359918175 551211799 363605179 151849598 898646427 630278031 125106830 989181952 384434986 913531715 540302290 787864632 116339806 750770662 357188873 342492322 578175933 806214556 309898391 571592995 816700435 920103668 839027003 281090564 273921641 261124193 938862094 316610480 242740616 75537570 38181743 399516729 542521627 226084735 614666195 293448007 337442344 31929197 488143 229496604 600231584 514524813 441103701 329856096 616098130 84465094 62472157 783356154 844626252 944242757 971506619 513083745 13612922 904563914 190768738 473877465 987016265 286372584 820669075 491145516 123050109 600843927 194325130 115487579 685007277 269901324 234628051 938921519 830180659 881695745 199016297 272890680 954436421 137207285 266956471 766871344 251517202 925964042 419033574 224275763 842455773 811387882 18821764 662057580 394297021 577775513 333075750 77020921 418969778 729205197 485044133 32774885 738307109 293139330 318905271 492116186 502813877 559542603 861686738 508949532 716170659 207579432 579369923 624556748 584832831 739843749 362898659 523863938 221938493 780188283 395058515 950062066 917770175 283535323 98628032 791559029 747136400 290315582 191022845 220072945 988111299 559520767 702697897 731706495 506487801 590807988 229810500 253544395 641285232 887698525 331112848 849783388 172854116 762048899 656033042 481564852 882444961 685763097 732981540 237180308 684439993 411023910 610854910 260080080 932118732 81862201 624471269 370398263 266985602 565106474 907695478 777946797 257671372 267806172 809031945 802495890 367904748 217539050 943028988 323445362 846720181 124037638 234494768 156147719 840219315 319210734 571892566 658440199 233686507 720924759 830653026 11352246 16381075 889405329 980923625 304068875 122254904 357045019 208155934 509280582 649587949 511355943 315799514 72338623 441855697 392741862 326883600 470527050 432907690 130130230 848087979 235729567 28748697 594691529 611307884 943441028 590742231 360334241 95897809 653172624 61080361 493283740 852222078 489100017 41905763 359738630 513867301 238796145 27925584 269736663 556003645 172929546 698379280 360642726 785610367 473341455 163796264 760034283 47102461 297809118 418573211 417098810 35793524 508128848 449854202 1755239 204125915 538583180 596230536 477692995 745261708 239531341 682225639 754876215 765815665 835158677 432512377 803175124 582372995 347630966 117480555 29108247 336222582 431804161 149393234 583683917 900263255 8157098 153009964 186441925 608428992 955676837 803933315 445693680 565242595 220008274 539858957 660476417 83407877 492938168 469524521 750991412 998907241 696666917 485092288 679616608 287855647 294054137 125703855 69727834 332643805 59967502 812371582 712815080 14659164 764278913 654057063 178233585 689102014 30539736 500057732 846483063 633733352 371517414 726792315 240716157 69681174 363491521 600772801 661476683 352490564 244096845 910298647 24609683 481327084 655221836 185474881 369503783 3883644 980965351 198624601 169499922 91042342 695920371 667344352 338729914 425777380 904531790 652984100 890823834 708207407 276915639 255808067 480364354 622559992 391752497 410741872 867602063 876058364 92059219 908339602 306054850 610925728 957383348 314135150 958610112 276109106 897407690 458090466 247830217 126214381 225926358 376480329 430637869 104975971 152465182 530013391 943472215 647878465 153864668 63642848 430268940 410941908 533607686 586861840 372291670 110427229 176367742 301960125 969473606 961136535 371791609 832904273 290014187 297597741 984417056 865547652 562814097 116787362 151780054 234876038 81292422 741265714 237384047 424030275 981469551 870358270 188647876 136092290 851409814 980015318 750746449 822610857 286309086 443214194 465053513 513014968 938663381 920426510 983081261 845444693 939484448 909399169 207581342 747533198 80414000 94813082 693422595 872146635 118975630 737368781 656103753 247930970 815559896 938455245 732923734 310010037 133626846 963870184 672847276 518004560 332073840 15241666 51269266 886811556 515562401 216479369 838709738 223874883 633878932 449821005 243182344 246389983 383082718 999832691 399558508 448000846 997560829 147563925 266121158 703269769 698613781 293355700 343592100 975890069 208571188 725213228 479936637 844425900 992967633 871491255 866163342 418186312 790134227 363576208 453705766 67270554 842907084 784162509 343835823 880363255 567797561 725212333 831123813 268373262 211456796 724040908 615735641 876130754 80508135 226975422 220388230 571059981 546794175 57221147 71501679 495812449 529636096 701901806 220319383 559895021 462976169 46383796 125353383 926580562 35560984 335959930 994695055 48334281 864389978 669692571 724910281 143150734 216350900 593098079 899169505 98564247 283286127 852893908 145193284 524513329 703612134 883748008 508364316 520997952 744157112 837994915 686465304 204437499 492984939 96737376 569311408 546847227 133739331 147608759 741846289 214561676 705857081 313231718 346297938 915853170 283997439 436693680 953848137 815965268 178749094 642350645 117304671 998614939 325382591 460969920 401282601 945711817 152476294 145943963 965916944 838991618 125990001 441811139 236845752 499318945 340566365 346089456 209321663 368309487 417483860 25869592 516589584 260982351 732057502 225277367 720801759 369322629 158404800 877464715 961838623 410127945 540240010 208480230 675525243 438257017 219965156 641312176 478242170 109905609 243863852 233907186 572803830 855595550 88376817 167426748 178082810 939318568 417236722 429283645 954973608 415940382 655280395 610821323 878662195 364628017 2383281 441667345 307757937 41071833 751494454 39099481 776129188 322348073 550729086 857323389 103923948 352694410 53850149 261236660 789193329 11039521 249675662 362104056 581967745 782050889 179505840 94920178 457000081 235716871 469742098 400044104 376478539 539449645 34059681 392713174 658090586 832926174 890011748 767163068 751376319 265584898 312694580 514795931 208608550 263132870 417387962 324279790 764721663 920587335 959289732 631865930 777656273 787472321 55650159 36265153 420053196 2141766 665373410 298983931 364681543 847523427 6353445 957793972 294861337 342716554 790660754 274576227 315154504 315284901 327926273 161682007 300284930 806240296 540413792 616237019 144032977 412536901 107032544 634245167 257161690 149163712 260636847 517514744 528479345 411790186 490544701 857509835 538669277 505878380 860990568 846161514 200747480 236194550 517972099 614739414 914551599 868555819 82202422 77030435 78525822 210333443 968015356 559486881 532098032 86660069 388759451 977498541 192591966 147819959 920206652 38669086 557853005 892105818 216899785 515926086 924768346 8966764 466152296 949162819 780548425 734384839 728913497 945129641 840240721 628929332 826771002 841082654 67799118 294639472 795773409 291600986 683454424 677304973 672951914 560249598 487039082 388671208 266458674 148382668 539869860 284861123 546903923 410128587 443020282 264724114 458480761 662296528 238280214 609520549 871065688 489192049 51288399 742412558 802822603 79949804 200206509 162851007 800956792 808150122 658415700 193656909 350037195 818326024 964973944 625304390 319658703 452904587 85133868 56147466 363865171 131366551 394070385 769600074 716851981 476818109 352034156 859661229 571955437 652813558 404443284 226877848 638941057 981679996 809190324 158219528 957902238 727880971 735962361 614572213 55264162 396292932 66787313 520689168 385222197 487040885 955776452 574398463 771463588 70152497 185054041 287020138 834788144 623631043 947839305 96502755 482451565 246549494 769192362 897322707 80942149 677545228 269575682 639708560 837103389 228157421 872693050 97094235 20273815 449458781 165988293 698314403 889121291 421304462 301033002 579302658 18146801 506044498 829102517 61928494 696654182 697793581 754464075 433608982 308583287 719092190 223262275 382198978 964221931 497079164 188453771 87582252 128818012 110378782 840017497 417488849 507053546 91130685 648721110 73920001 993632429 377120003 908416990 733844766 875757986 276996084 743441285 711506717 4851087 980667508 981736443 60202020 334860749 899356405 317758520 51627802 79247130 434621494 142272048 123804578 792150881 323839918 479691288 523071991 171931974 279531440 831880241 914840107 879423387 121318048 285362618 602182594 340030475 353725609 86659718 952382004 150804355 725523948 21059013 68199364 164785196 673629978 536294994 670186141 747277258 773902315 704904466 202846625 966480736 183549816 961423488 381557881 225314976 445904638 139888325 255672227 203151960 499229284 374753907 475231560 180400612 292388639 158471782 727330246 534569917 501957311 401410601 675910988 811482696 188113582 519809891 325214128 669990505 32079643 617878187 111863433 67793870 111032326 393294219 871257337 391105843 143782898 104172249 975924381 366134655 46527824 189162519 942829474 225981050 824810399 141681032 859848802 651035135 145823010 810034814 85832292 44446084 967335938 205470154 816299393 929309879 309089700 919716170 648011811 75270950 662549020 357271701 833875273 843006238 777801910 475245850 444337624 984495566 157381118 556483862 469940320 11244357 625225817 859593610 246683945 503465216 188233802 758850068 8958862 790459038 15227137 765966521 413034964 487362535 975423623 508287206 2782456 43627138 677406555 549760757 589584181 500864930 140052673 820226130 629662345 273017526 320789437 936526759 217852122 990913999 26912279 607795715 164264210 610983677 349385727 285015796 55303890 439552727 9650396 811373867 980718926 584464719 840588986 667572824 526600857 64733542 335398183 317749244 657946931 587983938 814657226 959631258 285028556 461519209 516031616 255748371 884069340 129907426 516123434 349095322 353032914 147858471 149285927 463568890 481041789 172870709 846012511 820702097 624716590 602943702 580415946 816437567 773157499 602016045 203938788 49695447 387253159 134499287 2937146 663200637 21464397 21911720 564186711 256374730 409310634 179742277 286288493 480534901 756797067 731467057 975128605 892656954 308366076 723769602 33381581 980493613 668753584 687305904 627640087 775258936 840302090 623916698 352659111 967401038 513889888 621893575 302958918 205230804 454827533 275638501 147269658 797753517 341251181 176831008 976615243 531973070 385385598 133682091 762413 614544095 123076570 484705049 794643849 426711983 901452897 681834450 451106833 927799467 379193677 973260375 334102709 956611378 603915450 779191811 366975322 159651239 945167434 434710869 961937467 12994200 585345283 247352309 343883944 341708683 731390299 462260078 231802648 574056863 302090128 995641673 236510714 204197398 944837932 577768998 238412890 441983610 577243332 268004521 289392106 392806162 173034756 898588076 147103314 457630845 667824302 593878097 488051073 494655607 205057076 468666677 216263604 718671102 733348576 108475899 356001652 830514428 329962484 173863462 476056772 385579036 40539766 129973937 605293172 21818891 877654107 640700258 521990182 986122906 879592059 563848265 803481371 87705973 999315865 406926155 807397124 495652580 912378527 794616841 311741390 940783771 502299848 348466077 186255189 677224838 21996044 816682939 402104734 221532433 982535954 88191273 792196401 316634013 196543765 379947219 347490794 392105201 962522446 754663920 896328695 991930020 990550512 183628323 187143112 807629308 196996760 650077663 149578428 905866236 383170957 266417132 247848139 757088263 939188631 719126795 865922867 846164874 205155057 166320289 398951289 258103183 539094633 220260826 107772970 221545013 466952538 102636871 844393673 340078287 456791532 627937777 259031463 497877301 316327252 300181268 771994822 756689278 33203192 325230067 768257405 924674597 976060562 822080872 95992128 856642040 855093032 250549910 455501974 903478827 745769905 158884069 876880883 920598892 266817597 446729072 89257661 165970527 591472373 381534293 396054649 714414148 944921014 820737945 473591470 957556953 920759824 249588712 161391069 186202817 951197442 942382494 792022359 44941479 337669918 264903973 645692561 298077064 584079393 438111384 74956611 213324072 922636646 417875457 782048947 393658574 857270305 393438379 286897514 522797027 106318468 347191805 730303584 554100104 481176073 149311963 304306707 334938364 965681808 260589612 643810620 217167171 578237805 16936946 990182949 428725077 969769712 235349820 437838782 156655802 691217760 994849504 672579327 444502181 548946661 383774890 707173973 900800315 525811059 76276033 545873076 763235044 518138492 298836509 6023129 87604104 325290661 932940314 228017152 674013609 933578131 376848203 842276359 746422472 966092735 457242867 496691523 397795201 859793254 30538093 864398994 380729318 60246097 265840857 404818302 480370731 256399494 674419933 736231078 333839378 638226639 180682451 417673054 590598082 701459197 732831247 288785238 319336524 518307880 579985725 385217406 736444870 240444584 319811465 615345055 991055307 208039965 574299908 95954859 694435106 906007919 131221843 561917279 82238722 620094915 19329384 340604251 486261136 275085577 64580775 119880007 759247424 225614521 478349536 472691179 645396104 908947927 924480535 680116164 8711174 220398191 437512007 192174336 893298781 571665656 698170085 351961988 873579865 584635612 421483596 787558763 368407764 237961744 466313010 62857386 72926282 205208141 469892289 673658544 200746492 609912067 463232425 466530125 832139087 414765855 37190290 699384179 178480399 484347654 684168907 877538833 373513391 203247586 375496288 339766351 164336619 406559126 924096857 17793201 12 800098290 419259165 719436359 716475160 622120350 606165099 116089378 663261781 514948964 970379525 747365244 182047962 743041114 955938781 266602115 916072942 611071034 252306406 953704680 81870490 344747548 603913894 671321155 539273363 126331839 271277297 429288123 753484538 800051079 929727648 603090036 183245047 997817676 238728199 928881929 29907365 704903002 75102015 983445320 349452311 385260110 438833563 563640830 377635466 849062660 301411787 858006205 989984091 184389662 972452477 528502415 112337603 915776047 334996399 126635454 953023296 406235573 423676175 20289964 888915876 405535560 867557237 74484701 495012440 795029045 739830646 512884421 228859584 336323348 468093321 352792552 860133766 806179722 934651594 939055117 843157836 723464848 757095988 430985794 584556929 161820019 734887746 837259437 372562399 931486688 505953796 77594098 302647337 934010094 695703288 681170415 266430542 230780282 111321215 399094954 36959170 55763228 152026681 754431570 998404344 186158146 881440185 124788378 36512545 227001221 95156137 655701497 784279875 809295147 777485475 984037953 792794318 598440700 85450170 977722860 389123057 909239194 30073398 807514532 920396251 712629547 822183929 964220145 254543951 754977247 35698506 695974446 846440194 13084433 831957248 695697254 570317588 54660477 718119721 194877310 55755774 882269730 722123931 393609003 527056572 975423058 498547316 40199647 82045114 536791649 459597835 807521368 227325966 537006899 994498246 767659 500115529 910773952 8142794 674619283 533410740 488130352 417064788 243093233 12844594 921360424 527397184 817803684 433321304 965688311 274584883 934406726 51409705 95252991 70887372 686963756 840788191 12918509 237535297 614733798 495979865 171037342 806042656 576351316 460560752 955954418 330087199 9878271 746796863 754374021 924271894 850137956 644862712 93797837 114581207 721232120 994435233 446300979 126730776 633049097 91150265 234835279 608178002 810070317 360462228 19908333 605497858 114883227 444582423 492355064 116349112 325342025 598841613 654455808 85647702 457438659 717846868 478084929 662499962 414797340 529567481 180244094 883870026 225927199 164387590 847259518 480546180 437187444 573451821 907334424 515197326 418309372 141202508 548795357 418696625 872204942 138686172 939699914 575578186 239434889 571376368 20380778 340824680 282257145 515147394 711881286 154449446 804380913 126680775 177609823 722322716 566906483 136081031 64555402 227522595 968460101 930869692 312918409 61348065 568168131 257244718 406853765 643232036 743009012 734341828 601978018 676228373 710617371 631683654 158687786 259560973 207727744 679627215 80996560 686086517 98812106 709074269 830673294 113968731 23800595 798696173 390822969 859001058 126367369 801645209 984710824 433172139 844682095 144749533 616694950 633430238 159012644 227019946 743007920 717671368 232361140 569599306 26292868 697243396 857748696 7021541 994226319 407370311 421482385 386431854 458335267 888096454 679596169 34654537 825652454 675410244 707712109 513877932 596643771 71015974 659939364 934769382 70806029 61500657 338636369 383109463 287321364 976921375 737084899 43622318 900704715 746546821 987570463 571748930 402584269 564059709 320486319 355126297 678887839 961634721 891228119 129263161 348467052 862485883 408495111 837285435 106743972 39266906 890250354 288110723 454475551 560204672 721795487 230081899 696476526 361329813 97258927 514785644 87414528 893648585 107459134 814566903 859404916 322535866 577433652 810136059 87462742 979816958 518725773 615194507 748233542 674670170 636314218 986814881 274816943 847250097 675379393 947828629 882644135 901177266 521444408 649817781 355798843 798941522 583603527 927074629 344994221 96152072 472303307 514635283 892801504 130169819 502884698 106644711 816726558 79971252 42200022 905828419 868084148 381560221 262422653 91587208 612414931 647891192 345700053 855389163 116081494 970858279 43019128 339717972 869002269 309294590 330927915 863149199 841276013 191064536 813332761 723909228 467020824 620471392 874690517 679744193 56284988 408431378 800202010 614495192 15587549 298820170 148125783 993670065 169212725 829655288 796847992 339242580 610084083 934481354 272500435 869258910 224918419 525464062 703862312 74146674 59396572 992793458 297288700 564321206 947917344 354961411 33544303 385070982 442957406 754413289 41761355 711430403 438165321 83992212 568519934 983493440 186244716 370161009 575940751 140312152 574910236 470123772 171874088 296483886 580395315 307822604 263271478 441949157 908855334 302042177 677957882 424527696 137992010 764971787 264169110 414331658 499871548 375120172 706005510 607308096 181431688 249406817 241905609 792462081 769999707 765264657 68231496 581955098 74972234 647662037 410167167 45602156 609520884 517981185 384464388 29251331 846136760 984935745 604141302 813962406 524111410 782330672 223151137 514812351 902708741 648230680 496471678 164455032 188478806 832993477 452773573 623725454 857073626 559508365 865795797 506628041 969244521 196109416 153465123 4829489 82202004 330445068 526952623 310048039 929431946 617719920 461939484 391342606 150756910 915606957 91820675 494324035 898173803 352136779 866399447 961761342 6277045 568395157 285215746 259825983 328370689 726617034 384677189 531424519 440814014 682459707 299177123 509059282 76262173 452954511 598151442 204727362 127138618 850877685 417348750 902922714 332386450 639879101 753828778 517336955 140079652 398425412 483901801 369339330 747591558 392613137 181542638 820900998 390511332 992832474 10868920 129397476 737210263 631896291 893329725 497654387 82392420 785173067 869340500 895468174 226649380 244359499 451768797 105217780 766842867 983255124 785699331 348416886 969932502 258530114 91050579 469663288 289240325 171158299 625910464 169040061 374235288 450473397 377169258 242509439 125396910 362301373 863801752 324927275 77172823 251831166 898095404 721423791 769648427 955229913 823534910 751256482 684040462 765981928 944328944 668378432 879964875 529334138 967705083 401915580 329667557 590432070 240524527 361710709 906282185 903404653 202639049 313181527 273905771 358913077 672529158 29477890 404992689 557509527 267252992 769555546 248656701 523004018 973123353 70445551 689893906 433777944 637405203 867855212 753135614 619267009 922058916 465989353 576320362 324664067 210106218 410562006 300017528 461349137 743528284 917736005 228230404 367280702 641221836 243830980 11450698 929318524 797464341 1023254 591984259 949736450 207497335 185375949 64766993 772849667 420079847 762066413 428515094 687016952 484599324 603248016 682840138 831809791 228704033 263335459 393475616 655017567 190308614 551976589 174084614 548463497 968575214 306034047 900599148 885100609 462431028 843720673 73084350 575207856 315776355 700634871 930411365 576101554 791293590 979063659 296040923 593328781 904826563 415975394 114754538 653812054 82727619 654514400 585670217 865019833 652140676 233487711 506201357 589740074 829228788 314761454 648801472 440439984 980053983 569139269 397279466 79556598 967296987 689197057 56316193 999152456 739852866 575585138 581241409 354944613 630532371 193713383 542305955 418569788 845851604 423882023 930049686 667477907 534499245 389436562 301577022 55551035 571046148 191810582 788762679 218102064 772263530 688351490 253258496 471854347 936714860 365274501 107190937 121351651 109764971 219644479 845366420 256881110 914917298 948977115 129283992 640837244 650283119 341791220 832011434 469868322 301554396 208505901 468953626 850753260 890197799 82456246 647251244 707458168 304777257 719246255 32555177 197218650 244308853 697729784 729824713 825497361 552328189 211727344 374742110 104225879 614047692 983030840 226640616 927495709 518323356 84439451 524496974 899617713 923029817 416304504 708649710 556842752 260983006 850262803 92199242 425034060 304267185 661908287 769775411 774696929 471224294 724462020 648398789 214842230 2129250 639337893 743653362 982647134 884260757 556798323 244946086 472250546 28349241 418257322 649964570 350936163 108634436 533059617 345027510 676700356 939594697 469512029 283187922 967190888 459633344 972739244 448761249 435612522 825632113 627138637 965405068 89944984 575170186 118624125 991167790 641595143 243930554 733607533 908884287 12694567 821850407 196423197 717433346 36042368 458689315 869897309 22266581 166660217 946950896 234770795 501262578 282680706 508976915 715668986 242170617 991059435 384661817 428337289 996526118 210443660 144669767 156054843 786886855 163537628 363011980 455925705 737162205 959152010 568444833 452499023 477980113 715572833 696385 531013862 201512502 326277455 989295288 599666002 355837472 38989593 74832026 142808384 90950651 291644423 776548519 186123410 657090044 432948018 34409177 793447200 915117997 335267496 788135128 369144788 12573607 357823817 633163875 747184159 457554271 306396763 273716606 517200994 357385915 821757343 302904756 570906726 716131292 647814573 157395620 673982303 323779778 402019661 658649636 183064738 785301183 744251439 328531345 658815329 517473725 742204947 751942619 712177821 75430984 369835474 53211946 959180009 79775303 48994306 992592486 730543092 526181608 349878381 666233231 532685307 388922848 260882223 602290808 18128216 120274113 650634499 729158614 422177549 803287079 20292693 715706608 533409703 879942374 546737910 8162555 678377057 935620899 537192769 446178240 786135144 631355337 303228392 35892008 744174181 625012341 216376455 517614238 703119369 783167161 976745182 793934801 80601105 720843098 732210126 425260877 672492054 976959413 888061701 780545562 21358334 796814626 301380562 175774394 691944663 222800213 14258272 584806116 95691487 737276151 647447725 542779653 164323652 268326899 422860319 466319596 858798477 865118559 156802273 478091220 746580955 462996911 976508703 851402528 715334249 838161132 380959020 314344078 876665232 171312972 696596780 189393640 923353662 935960843 580912785 888668502 890037565 754831514 274696970 7134038 935724565 647748612 67014152 589087108 869616479 951443254 18623439 657298963 219176552 657499579 24734115 991577834 292649460 102092888 474930778 110984650 378698059 95759503 157880698 105823973 457928614 654948969 316065540 187647730 70029427 989599561 290737333 251341669 685828623 96219287 905000944 353846160 148237060 965372732 702328777 218137733 896800949 986685828 951373355 731467336 976618086 920455337 592577289 38135633 69975044 12134096 941563934 392663420 198127552 103960000 936113439 623567935 887408875 914867986 481960063 975321513 307377653 823781898 645132380 477401811 624300201 417044099 478370655 860150196 896515654 876105301 416264972 206725522 519348372 961600922 593888512 433905460 378888599 186357588 646992168 167244220 863305359 82999490 596174598 150503403 581951865 721996806 313776710 300423822 1236853 929173934 458775840 945996005 490632222 182215032 348825320 441832390 958345761 131070466 456621356 2098275 963627997 171962667 829855651 504201410 415616024 142293193 433833370 29239887 221669276 278200450 198328295 632163107 427664422 570415708 765130562 40155907 412256549 573910768 720124862 829426564 23779174 457955709 123274982 7977967 157342977 399558567 348272477 513117982 753398117 866925416 645254411 959741257 772201728 554703454 656727951 258834593 353331736 593064340 46777269 455126431 522097118 186022517 661140899 598501004 66184389 164536778 385566849 279883840 941332869 299686452 286047980 965257057 603617090 101649217 26460317 839780639 832293976 413349476 124463929 705727312 851160858 840343783 122428912 287419834 258522854 169969979 757639814 811331390 627528118 210520510 967712396 618572839 373302608 117015240 996097046 479381964 245208439 312543602 543419559 702013789 654482277 933494859 320786114 594157331 104682336 862763009 806339735 293512076 878125277 88967457 46647186 338730829 732484374 531654044 744649373 797163253 784454625 486403010 960573083 223961785 109946767 45137409 750025977 995249488 830812555 838180381 206854109 527217779 16460091 803585947 415705509 666384087 365125628 286678353 222191012 785459545 221824817 580560043 17913865 767973110 446390184 580530335 70048615 63358957 632117770 311413039 776733670 398114602 285598218 623245651 671570901 445500445 191216253 445949565 855259697 368989302 406259969 753034926 700336400 783633789 607309466 7939373 515740228 892894259 249588899 651247215 426055913 643380459 169817699 213244400 628384473 279020944 649395988 819671424 152898968 621454907 655820425 180835488 183836203 998625524 940920806 690653783 960530525 377565490 650658224 918271251 168049195 484571002 784964673 200842736 511913193 569091232 687766651 333290057 104319786 262106062 149783155 610739197 31238190 631964332 226182641 382163595 201898962 806164380 756502888 677406194 78425780 717197105 204232984 467692941 76015684 864881622 551448713 281177395 938271379 639006659 392385849 685448412 561355259 861661822 387428817 662419546 908976005 420810173 678299499 108198495 360249749 134166544 80192080 135667089 468477708 748539016 197520630 265403080 419961350 750158455 438663782 240220983 72801867 884564253 443139968 466367123 239382406 671365316 182256473 832714443 387726445 40658547 421875591 544767096 103240296 431648640 478366538 13479228 251420659 643743672 631826354 94984680 546394696 231830202 211490864 912983014 444510806 86362948 529440962 867453727 318154790 846987031 191508475 648234866 653972843 10615644 53863614 542076545 867421452 173781553 610733515 180669122 477608843 512310120 792003431 152348698 871272518 198742862 110382802 233594843 402045326 122416958 870997489 264230185 265772858 369339700 883456496 239508561 614290726 222852011 506753065 263428463 629176174 268542813 774228009 724244285 869097439 313409482 35183405 908718767 505086770 431834866 247529160 54758756 150940104 239497199 249150362 984461495 986449057 855747169 659615945 701897595 13292603 727901694 805239006 570974882 102500505 171224876 84059653 80535764 644178174 717287773 701390957 672423884 301015707 987822715 143259894 329873789 576032047 545907120 656204305 839319255 177090145 315160070 251808753 497364114 725083153 863022953 400628509 88068316 350033724 426761677 97197396 393688146 483826032 760975542 85069875 17435968 679839239 440332478 811737265 339032002 990031874 921242241 530894871 763163383 380718556 689203253 168310339 311239587 71217224 528320714 203771755 905753879 574512666 675458189 394548165 780276760 970737900 845750169 405811894 505810912 700150818 510311475 965622057 126657784 231709372 427171101 888611042 83463502 65182658 503309655 916469685 765400644 574922564 556760211 23517832 9822267 601452455 848886223 865370871 529135794 184302108 192482919 36275438 464543003 262793838 473180152 470051837 895089287 266096249 766706543 226364045 99314963 769332930 334292600 369783084 578520909 289832037 916248722 389355546 1360758 835429369 181995320 657188592 786488085 599968762 342382405 56564210 944137747 817247756 635174130 12548317 593632459 137425558 928883309 235588576 62655717 957614851 996947622 22974909 66134421 319593614 690406560 409226973 565209882 224455722 198034972 266200323 332019666 178283260 928176319 836515053 916570158 489213928 766851960 350880390 476567492 853328137 155678065 494023222 263114211 952290337 590135451 791333530 516883904 473980854 903534601 770903613 180513879 400338560 475627478 195869113 266607907 41778685 380755547 209242354 252434527 400311087 336120013 705851416 765897304 231838488 599713674 494576971 375984934 374173111 427248448 855205302 762505044 192138105 594271009 759580945 92372727 307107162 30268031 259739412 457971026 202036149 573709515 1216285 685825958 114614673 29150672 41499992 918980285 328800422 135552002 659671270 39914963 153610508 537490461 209147895 29775940 186972731 55421349 840681530 439364064 148471510 852929846 116279670 342433881 348044144 201550122 616622005 819898546 393745781 278719200 532543489 535355403 141771401 231691786 16868665 300353646 873713797 183674009 207752959 316158143 302628442 613076851 521587609 63002315 81907183 63182118 449957087 802415789 880434776 342913110 275861898 169205793 909691099 731078372 815633610 504537331 328420535 352723064 748536268 839949839 982230493 121601330 325526205 28064814 298085645 991789323 550094436 547823976 434458474 684326069 701716412 726494389 67572260 157437084 404935062 711550916 364185254 509593361 567841887 332876494 773538917 688646946 237245028 314893922 104490880 734264528 636687860 811689786 281949406 883535935 274025598 524864752 298518841 89375172 349892214 252274732 690478758 350359805 988467940 715799817 967783315 122606434 853061390 105415767 558000638 654473432 8741627 176732575 752548331 163695893 182251190 412753046 688217895 55677135 766670022 537563643 194320820 420539645 814321781 503884737 727569519 212694646 230808910 862806063 7995543 864578645 366954134 696639623 631963638 41728084 338534947 730943269 37401186 586206829 82408780 826502832 912061303 42053730 558316526 842236254 583947446 361926848 527711685 953291275 924865122 291005195 859293135 266218852 231035628 233719963 730522662 579219434 382449643 126393270 304957860 650300055 398923005 657833169 526356998 260190065 262880665 503152892 347001236 34476068 747622926 551957416 4047962 297869895 388278490 993929182 646629945 848247406 139461307 817656154 734827968 885008738 624814330 314522464 120713392 783470926 650516583 252746094 84776927 971433422 94653423 452517977 829456659 503629149 984340872 930019291 744568730 500638127 71408551 647473201 668476365 759546959 858157543 427970056 365720511 916619465 221853863 207499411 801425184 185844996 696044124 707321580 437187166 124913560 497201439 166199857 396440276 727638808 869683017 579156287 972988015 803886543 989352840 790239060 57568188 636095941 379335773 737193177 464590651 605046123 436015674 209322560 901052883 466483784 15355718 299373564 169876906 237934217 12459758 760853322 391380113 850569260 882484296 196290779 423481900 380164807 69969221 793850210 677938339 703278366 553767060 123893272 884658643 924676698 263522260 308826993 560852390 663000229 223707611 371246105 30494000 677885367 434091969 128311456 965327050 362801939 383750667 745303451 832662820 109950913 274296425 102500147 100000698 37264669 841117329 14287565 289387920 687653424 924999467 615608685 202467937 10811759 171261451 262385061 737432782 997788982 435240914 808790302 965840675 877924325 714304103 306259744 189226730 68380744 793855537 319947349 198073832 612420862 206479175 102748141 389158771 348908101 174909416 618065977 513468933 970041472 595887839 906536365 542263601 573845386 107740458 873510202 606520313 868581985 495853635 935897373 936551165 526314196 42225648 866535821 375003520 424816018 564680888 761078669 851095721 924016229 104519408 493734225 198913037 321761782 782998786 502808768 452510448 655458793 818909306 619961829 803176338 163011696 943289983 777798315 277131284 137376953 517879409 239098899 944678044 629812841 86157087 645133496 725313796 153491754 457105642 780595290 748839709 999008352 891370288 316678565 200288598 376334029 822024189 185035653 178858954 783021875 720033609 790440011 922744099 362751222 309124162 714156898 126937274 948507495 350166166 503502009 271142848 57707571 314407843 553451323 42973543 562236434 536266830 185419379 988055642 97406958 797666096 470805786 624896186 50978996 278275108 176582856 295770903 878220916 937619259 397992530 448999510 472839195 196974262 774765377 236195790 56464298 31329000 906529828 943316212 205837616 573850797 512988031 220097569 255295903 769636547 146512988 144780202 298373946 991726120 626600875 317490799 87681538 904976637 591058385 932526462 749472625 85539201 971154462 59110588 946125935 611746764 513607288 652061047 46277327 315077737 57341989 669217087 988135041 51357802 233407280 182466470 580220344 873917538 771174529 52725367 168353077 835923631 563165262 445310785 936841652 685791777 225971856 717470439 528024632 423039755 483857703 859300593 110358631 436090062 517252908 189877982 764073559 250355391 548213684 898528606 793874000 648282957 79852927 391053663 592994346 309467900 488692921 584125756 962596239 945299348 542832431 400120167 766041680 369832288 107530877 773482954 541642010 47613689 689061684 81994060 107477369 790740347 108504721 428682785 920244714 563710487 246267657 842341126 365772016 602544041 974114595 904318419 652159027 120966263 479486511 171266531 780716154 889725474 113778457 60318163 598832315 609662603 327024923 286268547 526738650 340173463 432128146 937097072 461390799 941184324 729063290 10550024 615515006 1501984 37255419 238381539 76638066 624062516 662717279 896055498 464502172 196010405 838707801 138643563 910935674 929840965 580451567 905682013 416237779 641109044 266914605 22532942 232384876 875902818 146645921 732083176 885805202 795815193 584352545 714804975 302195118 519297516 170900767 564823500 711007992 798733090 301236383 823106024 986226063 256488564 176895801 978174704 349553080 914049457 191075698 678987067 66135236 446773864 43887748 462119989 233141886 584825710 331833185 248542432 702484878 210507782 461395526 419988123 344716981 609625496 98381648 772094382 208899278 703924981 524105640 799587480 649177875 424896306 755932338 804844786 548656380 293267431 82834618 758154253 988468857 83356445 250755229 809878331 6545483 348734980 165763807 378226913 275404442 747780146 240921025 652490331 128218637 572255238 853613386 402547910 465246667 522336947 143557119 368161882 378690811 724949727 936102295 814627669 574517280 77936289 68065846 283353027 229389236 988650115 50951018 325867654 500767750 796000861 339288735 210544366 672610709 225442275 321169169 843892818 838150787 709805935 258746097 30985992 736228052 334927839 204419524 101875789 218634006 928833834 8452100 598082372 434051508 552287958 906344463 336954971 322295607 146706048 856592550 302497433 685303081 116182777 103946754 255283487 284987344 642783528 253258107 673494065 188462234 95857335 862688857 638764362 456141596 87048313 313401349 485171427 330195529 452135791 477591712 87639184 136943347 576775611 938916413 625796416 538432562 711982709 589757879 82443523 983805093 36025301 160086300 440558700 317493563 519826036 501463596 939930362 207743867 212532787 244598109 977111984 459778457 123628383 248066231 22293527 794745259 423668908 602885550 978190094 583756679 493705412 542607079 101015580 615501989 843086116 220399449 861035014 895069977 945309040 493625090 33982334 54192867 501507082 969327071 545723298 36923177 111666495 332237473 949396839 33541175 316870759 92921995 570932479 644974563 116053295 887923171 448913317 711374059 348358861 337164097 683789550 224888280 246273090 998094760 297208188 256705149 494535113 287465974 609331227 704707616 192530336 417308944 278490057 19820303 938503921 28075594 630142637 837074697 408825243 392643772 984731313 92190285 487555144 886730429 289583151 975536387 363711800 88149033 354393243 336462451 107977495 683230552 605373363 362168076 60394308 295412089 781532777 13166348 493656036 606741898 693205132 716581736 518664382 758450105 228401620 835790076 599733297 960605342 642024993 696974732 930220508 501025382 601673588 928392152 940152785 192941979 775191725 40919246 642673524 745919557 627761215 92310503 892492162 146526526 117979865 217482233 988499516 893403619 425711159 36416424 818933536 983618980 742989279 49296587 50878029 641041570 333394843 131167452 808562290 505007644 869906600 703522216 500424114 522242799 936007698 6012637 264101020 19993059 683479618 83477363 633831950 820343061 745908922 578984380 424039563 695539244 748403694 106663613 670320041 758047499 533592774 157153467 963334235 94836002 829211237 647192070 784073728 975808159 820409022 261031374 746845087 304796558 468162804 533795205 795771886 452361232 552273456 781123825 75915032 191255262 967941159 535431946 369001890 83256908 861885484 769464923 182649244 391986294 297889228 824056504 404728080 357945558 190608465 369018525 517067014 252865306 653101567 586820235 598932707 358156512 568582032 74865318 152120900 798005652 921634812 891436368 34748591 813756147 396079214 946505882 279029130 58573 112181028 198826705 784889896 12745122 240042981 700395398 513036743 938048860 839921235 562138026 161982648 650389735 122213334 367034090 839775369 846952658 510605479 504533412 615735357 622508651 13511294 324814872 813385677 735893408 714225889 431752105 672094484 17468922 520309652 410163953 972984709 282000239 64274860 266912900 836464204 192226794 242863397 755637761 837506471 434229436 636849681 335023247 415438907 331329546 738819191 370283153 194899890 243100635 721419478 613027683 674049518 105008857 810038556 488560520 110645964 811169948 814495798 238529420 295543042 214413591 156079663 5517656 351349069 268995941 677055452 903355948 512555842 460741002 747642372 330905870 552919291 708501427 685680898 731332284 258481288 428895449 682775955 412693989 692257089 346296643 776406463 78410646 634942671 769312515 446158749 105874869 626285927 881433830 917555190 815229364 6996410 695787584 886140529 19689376 309001430 468409652 757528676 732091326 550004356 200870508 340826167 344144769 494675195 158895440 538147236 877868830 945219353 5810659 487325791 604337713 274567935 122213427 612023792 388426300 902354022 675971631 964010557 528101860 139833530 24172245 872335662 113557842 940625675 990502135 561432153 84524020 756838103 173819280 82559418 610980888 49829118 560245524 490090619 307719589 571018859 986876155 665688449 665630129 222578988 938128510 604436804 238522241 661027815 162403178 732543725 733521478 946830413 9314612 32400079 327612487 401746015 256824199 528411059 27142073 492675285 926989721 74586422 94488484 684948549 619088684 339264772 353286319 641094128 797343586 961869790 265708119 398583728 763474335 115998155 654618802 818491489 406469533 881309052 952923441 451423186 354020435 633501572 929877434 585882924 320588893 847830303 386640704 103747119 467601213 161118394 857658404 719866179 18121523 235320643 979185160 994320123 403265113 428707121 563823263 273583803 413436627 850364040 60855777 784818843 383668648 41570866 506375889 679829484 389572215 493489594 959939191 759556612 508452929 337684363 530880743 853759263 310531734 544955814 460272930 176421683 319663355 47526077 369159101 729710357 578316445 353334146 106350092 517252550 118054604 541548200 668475351 612300749 829073950 982183413 403433733 782055398 148872264 975258240 145793399 821562205 124516943 525008489 488562367 549671139 265360242 339329777 575084208 848172752 348308856 951121431 749086136 134040468 440028321 591523200 993747955 930828764 768087245 350910303 13064057 729558415 906478248 390511758 133280119 272167042 73287498 703146143 146888260 627494485 117383519 229786498 635650638 500190813 450143909 844401473 381660108 489622260 945969563 825554659 545527537 650591965 380573614 574622221 978309573 904786216 811889575 920406751 185442681 61731050 255632797 368289687 66121667 520705269 242073193 537279371 57556718 672134347 740467827 39008558 694262306 249191564 146834626 911957358 127191657 91621905 474670236 191654251 618616524 680268782 298006813 954517363 376015052 95774900 739582899 97864801 96514878 530715070 173893421 514734028 208116219 7481200 228055120 58427585 480570717 795060903 676441428 975140577 533965570 523876000 291906393 929423122 790037902 43164325 365065984 384227401 951663367 987401076 679170906 494653632 852368457 673029659 930343023 862330340 595222659 741150369 999620003 664163460 224230303 353821239 877163786 372637121 63632660 875628752 435737413 981503950 573633552 117282211 112418220 199131943 67532110 645037862 635519983 365065656 517104281 105797155 2122956 497104051 39746022 629721825 328129329 11795866 650789479 163944837 932455476 446727963 173527156 115821406 684596119 943023087 465405900 761750197 352509755 544438387 533137684 48451277 228053704 659323409 308740080 393808003 9214660 520229180 984460297 514786834 922617009 190503270 42589743 663818741 315466930 271285097 475659234 216005791 996829564 772586392 58104232 785095886 932324881 339953122 955452363 659179227 811034369 503695170 469862441 786490900 14472553 816498006 65883603 68691219 307626353 743176867 788632340 250060017 999914973 228167017 312782536 595955772 200795614 311930931 111109881 880935173 678200689 375759611 23655413 255749049 904662335 181158981 31105614 286953871 278002958 599776482 23531696 593226959 499848564 200895557 781722612 390271767 625948740 900238488 965236405 525038904 722196926 341132408 453334710 565273313 872899884 185672871 926494532 479669788 330533153 232023884 217596734 409102434 503083363 784540077 128740219 615088787 149638753 328870213 617801248 574012529 990843529 644065607 433066601 587834837 649436019 435041228 779270839 893508904 461207790 934089452 12562650 593545948 286380969 616798957 71850168 134765012 455632091 15559288 555855615 107769814 51471020 39118846 320629537 332500770 299606183 176554750 438024137 382100729 185483037 662235359 739634039 403236471 805678442 284427905 51716686 72542119 957760066 386074700 886990913 543862869 345314067 927818698 891006495 610999937 889790267 573830360 316200891 57712901 899320176 480723805 511339692 300038407 692438195 440744168 560589651 359732214 326341805 930380487 440258489 58905631 20327070 693978097 180683475 864178159 382394762 296568418 915749434 34324478 960715392 46445051 49830175 931052164 767594115 331837007 817946675 827256665 59651912 968189061 103443836 917624625 394168569 408390386 265469029 413358383 30387162 589543889 697929907 451193203 875501513 530691392 831612481 913900125 661962144 261948568 791092441 654612835 633407848 387000565 697678435 816690111 799288287 806174038 589636471 445683218 263176903 344486 783741572 888538122 567221444 204579273 969963954 759688854 889294069 677930358 309941697 951953759 189678939 770619610 232593297 782688770 761818281 536533295 35283574 645192097 560854786 474740516 695740740 645105100 944091958 172582685 36987197 83086382 205160118 419277037 856721916 716687976 151084942 917143714 125787221 79771166 16569541 952748757 787947040 815712251 569108037 447003971 858301474 880270791 279317179 126476058 643790183 833684670 81669184 618005306 4822724 308630374 733471924 346560969 151821548 68289224 134703834 58642002 188360115 858231736 212985945 748462268 935049091 567241226 915393261 112922580 481472425 763849571 515933704 121921249 896803360 221332725 994107694 813534650 337919682 176821318 173803359 359226513 890999962 504984313 172722874 996963751 688357756 461960886 81861234 911169508 710220198 798062105 520510318 971456831 357699900 998169006 553119409 674589360 381472439 453857373 119046433 291914128 608011327 348111748 982134232 740744649 136818831 884252775 434868957 586237646 430738858 172538069 333172844 471232282 806186412 84890333 567704215 529024935 344618849 71989162 871623309 643033521 617444991 599373690 233991945 647251179 638538675 937342737 222224237 353004635 71651323 208482283 631399212 222159136 141467263 81686828 971705130 854026823 902757708 21499233 134913263 478304479 431420482 844064019 538480536 252563620 366986088 220722967 195275230 300176797 102822674 862807492 62283416 217295322 899252687 353322423 234992055 454883786 597447139 731566254 216514934 637282327 594542050 894459149 471410970 173732429 701049831 614242270 137093821 86241264 764645546 631454065 52073949 662364260 494825829 850016324 528362306 234381609 206117102 930529448 926805370 496368063 657531083 972213290 461580525 669540820 316784768 832762223 820499224 231386078 702370746 960185674 865656881 539392279 298885666 311549521 287726613 897723229 177792575 356650575 900117901 457568733 630123145 401744290 982157612 71005040 143311486 165544197 358347336 829827022 157422871 395691102 55341002 402357271 692845595 261040125 376600984 203972425 888469013 638415383 234884561 909723018 297311459 606562726 712852031 196758665 138435977 372822124 759982758 858447892 868451790 672683494 85182070 349521080 172941039 894342206 938533985 119015770 39828253 881436431 652097364 502656051 904929220 18509971 847850793 63046649 194697031 367142414 465319215 475160631 418244084 284240206 514796284 147192547 61509915 788687502 282292034 319838512 35441010 987218756 209905118 253930365 580544507 624177473 147844529 132164551 917659899 435846130 904903909 216347118 355064254 935110166 709022249 96917573 792772891 386541191 476654323 804660266 648945131 875204203 30691761 978915058 669983156 991244374 8339376 662168497 955707976 218332792 19050308 31866288 212595121 172095202 858787400 318763466 167532340 555706291 47748888 822247689 234553897 338505783 699151802 148755183 769580807 982163692 238210364 843736802 809905282 17335778 615808004 757227338 775596813 598697658 443953209 736938126 442228848 656916720 892522256 211117546 708644034 328670218 754276994 743595520 849825678 581839850 37203888 967084521 323047814 554844334 905909346 675863104 368332036 57427292 452639691 842985773 725177861 791228638 65789460 93279095 850562547 776300857 497427534 938302769 730891587 638022421 876836286 838331685 359899969 196811822 65205116 85262265 714818103 291880985 418902273 79086771 814382806 772855487 508842971 743453166 185627709 55778390 419589089 612060336 765956608 917469773 202665997 927773300 761165271 292845018 963175231 229676354 38903110 88392161 155817830 848671376 846724699 638485505 290995931 532628621 2087750 37152754 112975499 484790083 111526771 761599351 557451384 699350034 792828572 283360465 871543708 891881289 72089941 764078443 427831968 260659210 11402072 74588553 123635551 872309061 325646527 278643965 178375064 734279175 325276247 332333502 754520333 900934726 506396575 961772246 959775593 695827657 588422513 309917301 136345252 135858216 234519614 772111113 414679880 341558947 358147708 484189079 539700599 704546590 391063466 305918829 10684259 862393754 100354249 427934897 668218577 709728474 198317211 544473801 952688415 433304147 843763424 820826672 768317556 216172219 253175513 500194287 667703728 73553890 192122486 341301198 923665737 588603476 197113915 21829230 751040988 119841757 848301161 448796559 930364410 852702968 758955742 339733992 372995005 169859216 9382096 485661769 334965421 417550736 583401373 669854876 629975156 418914707 2766257 482331725 254752372 847914537 504895588 953740639 242212075 800927028 151279624 574250246 636583688 730978285 215289714 931231058 319520774 577854063 33959102 700676465 135326168 573106972 909192812 808190875 127699955 424432478 321158596 906327107 316640014 834477521 798218456 445250709 266175867 599562857 951473147 996873252 652974438 111239388 503790334 719223602 169876630 914803902 255158558 797436513 155117641 519453798 62384304 135905781 564987451 802232425 924203069 761268722 443345678 897659281 553290127 776810412 85976489 716196079 636455206 169450967 455217111 679525703 587636000 483811604 609170847 169987415 380001422 405945288 31260744 928486497 361137658 936474200 876847458 793774471 715394581 956321902 197106687 441777471 358661535 115041405 766228676 729551838 769943571 447307749 849129773 808707499 648372135 676271605 321459886 966444251 430648929 394858464 382524624 211858143 236374313 707009094 316401968 470904955 949144910 492144580 197550500 800298900 260496272 581689998 109714256 707745983 335039733 721211452 522837708 817969721 369822554 273520713 127967771 988252660 635964180 776575238 142429650 167319214 304949881 808542264 802607705 557880798 687065839 166751242 547187061 122822199 373444451 394978004 973533193 357204735 706257736 859405603 600304412 247668588 806051010 412892047 169561366 973426302 449625997 853663763 202796015 649812749 26554422 711951292 351312523 9249724 704166933 97700890 118271592 313391620 267003653 418248619 953003902 4402242 555947375 492766553 236994460 198463679 316728644 886300796 121663504 539673603 112163628 367491024 767443376 709888406 662889548 361394238 524580224 649283795 96449814 723170833 650669761 12189592 399989265 286182214 441958186 535774607 581034284 167525636 655564637 918802450 796272828 151567306 353647347 891911055 38000812 302081769 419197476 860495073 870115893 422459463 706293060 123828632 176795226 700006958 510004688 123314628 969333784 630692016 806169820 235731235 396540866 687638687 962224272 527255232 684416351 366126594 463577300 921665608 305143161 293040100 150900113 359497643 725646957 881685 162439601 767171813 354846851 302214192 627595518 150565352 762848113 898210193 84524630 572399588 308669904 233945991 258245654 935926714 70614530 785404855 949243634 643695418 160568679 67485894 222727742 300348300 291772093 692083123 658208455 891601422 543721475 200810476 325882347 929570783 300809331 413629611 334569068 376707898 943945111 704761512 386228750 220025265 828341528 933451165 451253536 358994201 546400712 392381604 370177401 33526901 71025950 41599465 899529543 407127550 157161136 307771566 624914701 96640343 595741926 387526554 488880443 855685123 977556490 706809367 519122897 575451938 997522901 509515372 342273868 640962893 365731849 775206105 372382574 787268088 26300484 408598220 261423100 304769216 432110707 698050077 523289173 665801418 574944088 6752880 935711280 366844754 343714575 575536445 735181358 517010833 429110879 719445528 90983961 523317216 530373014 226015988 294255773 241903684 490316951 841942135 311993209 731521826 879752616 882262867 198601312 806064262 275370760 570433269 535340561 203340667 849430269 759009068 564894004 683621 605431259 264221115 492429624 920922904 927936080 759754825 922854226 44386509 418384647 12922400 401289073 366124440 925102286 524869347 931810448 331740104 634272683 805400062 110843993 402893246 684346244 141259987 349705788 473068611 488269553 601670770 783228397 261613888 463526492 643518989 121621596 230324319 596631235 176157454 27692514 258540004 352860925 575245479 143637688 545562260 239731310 643756382 262697275 28296343 843982769 208638399 28255456 635462907 972332630 609150210 846584822 747797649 631164898 476777407 982550482 243658434 431758910 924586432 954778493 400433611 758618623 782332689 881495429 230789496 541671377 256490583 974476053 900243674 363666184 191450065 897015935 671140579 133431211 590697491 406054543 957144446 899925195 873883447 276629303 943473887 460212453 251826344 140571526 466077300 905630964 749924918 350275577 582358579 700585803 611220455 821095480 57350370 475927288 555860672 866160402 689713697 800130538 320689742 100770085 333306894 518232702 872779805 17813310 148117311 740182554 505804805 690552543 977465542 493177226 256917753 898711341 399313159 182061838 884452008 27655016 226760314 265757948 698871140 591922748 97402596 214715239 564015049 215121751 941760070 742913927 557837422 75350953 597745220 917951611 549632303 894163561 683419053 550508074 213751992 453044059 379178980 429813857 764485636 413611125 339799304 641391410 363077876 173305513 223516473 886901079 600952050 841764 912201034 479729430 651131865 846493421 8095007 411141155 724025066 120633420 170639295 840968306 733832212 50638565 335795592 67987261 521825199 241396116 281508918 960477204 923801643 63298466 764146052 796520964 89792577 771539870 253753135 275988703 767461029 263591114 283033541 96793750 444044063 607619634 51161070 857584600 617902150 154609452 461369950 322205413 638337221 731994476 934170156 197228108 335685378 544280014 753130659 200355294 673255285 696631263 526186390 592041703 909917294 980642687 552551031 761696000 75318867 362183402 680255197 27052030 71841281 352213853 437768139 724708919 162341349 27670385 964228318 682205283 3167951 694844994 20027283 233531645 632825621 645224185 213414854 124376712 713063853 272064807 147271930 31341805 442074180 360918872 84584474 781477780 525297558 998145531 740457269 482684840 861611354 531442984 242875824 290026146 924725999 510646705 649134436 268720127 236363239 827664574 761692387 700699525 572642140 394120892 791929928 346439593 679679989 277396220 161403819 10927973 194028243 409070035 77642163 6929143 837851752 556530478 394881257 812106394 327221877 134294913 279956772 862740920 754514233 212659101 53634271 904659023 360462328 818863575 197304139 616797460 111282265 649995280 258078145 243105986 636977512 416032119 45335122 595951053 197242717 34289528 556160738 227802378 425182376 804664954 834158080 885442683 631400443 137681701 331240653 104150022 891359223 173308805 485606957 843566829 233155188 341612225 54262080 356720820 323145500 68925182 560173511 620570387 602045738 822909026 557120743 269405548 945254475 8438277 833885916 483657334 89732946 255772777 364529945 940416470 756338165 383483224 885446212 424983352 577327670 22517846 719360377 967215510 473323117 899787296 150813851 869051584 221546063 984670640 113500420 967401145 681413206 120012470 748171011 928242846 353663407 928157511 753203019 770277314 962171971 345997292 853484021 138905569 516923858 207357152 478447257 50124946 400983966 125440709 979412648 65155022 178775188 216656171 691454830 532526034 525597618 67906134 165092652 54310229 45426265 874472020 692341424 394820603 737582259 116551293 739270856 44450270 447764590 904920242 654952014 965774702 710901874 599784295 661596140 494321826 869666750 605970124 848423097 162236335 898510004 526918544 111189503 524456081 763954605 833591888 227191647 491422498 149843404 655992232 633454022 282508520 718634145 738217895 261334482 260843924 938735588 537639241 816440066 219760888 923705442 633123772 161288062 598721487 184376715 637224837 644686391 430868715 148243444 69238326 728188487 745601298 995053054 749267794 448221595 609775922 490268339 702282343 374628885 403450912 578560280 436256498 521231716 243391624 949981201 856984609 567774411 983237708 844068638 686366524 702605780 620092648 291990015 835867717 611531594 898742645 578500890 762827490 341112101 574759664 103819537 497866594 140469310 224866594 438208191 207149357 616816418 651642220 935590442 924174464 185858327 1742374 788540477 825113876 196628624 394476005 543793171 228794496 498440726 779754304 905496348 696501292 775058513 263784367 710013792 791376455 171781723 317447240 223638225 134467386 318452992 361115687 342439050 809900681 765467318 460725505 711565805 8622244 605545287 198185408 131595336 494583254 31409104 872446889 351903030 166690335 908888845 706206330 985474327 347911018 981581651 361499669 523266141 113896464 591587116 675509162 243472364 354258303 845526120 839425283 922470178 150805087 767042098 275069336 142313077 2991190 194863249 920006497 677768608 667257213 905014355 867179104 130799552 678838510 628263542 235152353 100746956 725115437 215143342 129790287 537487674 429162057 512417655 349662928 92818928 371133167 8586323 88424966 798704970 442279525 393669827 338916473 354611679 422420314 149556593 290674190 869501226 740202422 426576930 527657715 606738396 419096679 420969949 310937243 769401405 828136420 312291091 174587002 701389812 416713624 323329901 536602225 696442503 727928719 804510811 332740161 708163653 96133152 595354584 602101133 891473805 957583117 456297770 84129313 287653205 721418972 125075536 230561992 928945036 15310567 947775569 332172355 995061741 658405653 489665406 691380596 38464848 553723385 573727479 680575587 561232707 29721905 317500400 707495751 261956273 775694512 558602107 543938484 572247211 252559042 450405971 455058095 601120361 615527202 132044792 558559556 888479661 188056710 672884765 259871106 52322411 773584553 283081745 403429516 345160672 621644790 168671405 484908787 190289229 623828129 6511246 878402853 576975574 441843042 394202818 823361430 483905043 167654745 207633938 136854685 946242993 717354837 343276104 306828520 548235735 899287611 223863645 779321700 591983464 793215442 368613019 70055994 754995605 549420217 811288699 526047086 741382465 856448490 720539620 276914497 206927832 844092725 101909909 516459659 482065408 541668973 346478007 122199615 174220707 465173142 469288159 121324772 489149148 98674079 140052959 338235589 226341275 509355262 257892394 563240935 636893620 111939165 578514976 701445337 680918745 989630803 820345604 333610493 811786591 642131386 596834141 112414261 212438453 541697332 922762519 417890492 382618523 878083833 728634429 403675615 563654027 626546364 759720663 858607420 364853329 870714088 926849222 457129317 325435702 526706225 711511357 491310923 434265583 457843778 94998004 864644764 664513739 694538410 692054825 178246810 222539799 147562168 725513044 122558555 952642159 431201597 957098137 446855185 258801607 818994123 491761982 194232853 192527213 222833517 59604686 476986461 39422226 189761878 467331175 306502789 120883530 850867081 741313388 400896676 988935390 643849057 206377423 422579584 236833385 206848577 76166384 652128852 852892704 609236656 110462634 226463020 361377061 513525478 10875813 94164136 482450130 703631219 184239103 413030290 184594529 14812375 415418325 206746400 955876040 161645125 468476450 578750446 677372910 820911362 672990312 770986872 916749458 450921482 942695628 874716693 590765546 233462533 299225597 12360714 262993848 592863134 475914815 282103178 178784592 354891789 364881298 508397099 772745880 519294635 326073894 876776851 810798083 316072563 186484929 76046528 627092867 858944835 516176954 314510745 651161018 628597412 768190438 384749165 448607421 232978684 935542260 948783732 521442821 934532666 931228927 541886376 815062052 228648621 81319449 825732677 739415159 880474785 50020116 962393068 191838631 437028218 85416091 845258167 234187340 830081995 502520533 202530391 719844966 674807561 665163261 635503547 102878553 813296672 640004010 607889480 530683291 701534071 356817333 29919193 964142357 745360221 335497487 265382345 170676824 261515071 309578052 801015301 320874020 874812604 453277680 826054946 914547668 418222901 158277451 410036667 983840941 659401533 760885568 334306758 502171913 821379337 719846267 249075207 493689719 85485484 554375199 353904396 881860255 203109031 461981335 303021303 770383233 237016494 352534489 597443484 56194183 540745887 39775297 515171067 412083455 736700391 663585055 295492373 42151318 396650638 659801747 415077010 773656751 428238976 521461725 488676399 409675363 218921429 133608247 255608718 282812650 523133411 148582650 111341124 209115561 665162280 867030244 198039512 346694827 594207313 954710958 103331541 476921807 252266154 605647113 372153182 529635322 829753661 243270420 808313425 835261761 484808193 803193515 814770045 915204178 395825382 431180095 249284165 786966729 956004140 66443956 241498573 402103414 388640764 191997555 347625212 46064940 16628498 436807867 644873317 57691640 96069416 463705684 942202713 992449035 879926787 161401270 74566210 337198712 648785279 248071625 352450016 226157641 303856577 766315381 517575500 229405244 868493657 207642012 619485808 304900741 988108592 628356218 518110783 353238797 69407237 538767758 210248792 75174621 931736316 360120895 961900813 767923917 729260372 660644325 784203366 247946325 899736191 558998569 254160993 198627832 187789408 368008372 918763207 923718956 121483925 729885825 637492005 936462209 247592316 53760102 396960018 61183323 290008063 972048192 585645888 707578848 205332889 873740701 520231414 547173040 285632435 973873518 638845225 639709552 220215937 426533065 213304492 663232002 980471319 814475503 146572284 270731852 500607702 326202257 923068034 493631555 755933332 23984806 250764649 362595796 29514229 940825699 247496698 893582489 670441709 441044958 913520442 408808214 696409309 538590248 148645613 769573076 452470324 206995717 731325600 317315199 722343074 969341975 134854342 319833702 133171094 665562300 190163223 4250245 746759501 668394311 543262821 317112309 893272977 308866551 394196034 791915062 134165534 891545914 26544538 209480725 155876537 342438258 246519280 660805875 949690091 66522390 794547122 378224668 890752801 710722688 159341612 118117568 368322014 654456613 837955339 173905023 939159394 904364434 264619623 588202925 404886676 19584582 683289160 697867883 850739862 297377354 852596865 321484530 944568049 7430065 902150789 364489337 933216964 682104557 536013876 125605258 837782821 876459447 371621075 397387703 914400284 170636457 200169461 579268316 607637964 929963473 757642951 93213110 160042202 221576708 137142561 809066042 586682767 669054175 895827125 79822566 261072950 821582402 339379850 628319604 645305161 323099562 761659137 287640116 751151044 620631385 227359972 737753513 850810114 203449743 452978422 111921817 551161347 920897794 631738528 130117089 975266894 90655385 571773887 71653506 260942410 748479058 536899661 441674896 147543646 595030169 28176386 964466247 241214075 795722705 292957795 124418148 488443426 336121062 762067838 607940566 604793323 566629311 89830306 907432568 725334430 127920672 967546354 663880359 722322936 730543959 581636686 231502533 798299292 759149896 351022865 730495319 649432305 812668408 436214480 987063751 256383212 219701220 800000815 535678833 230129034 404919637 933980521 36847400 139665435 169535888 738316514 821268445 129410601 679783718 681490953 272256150 449656361 908175160 959861715 623573014 947445765 524009522 698594817 707528784 828141650 544845403 194632621 598354448 611514683 639200600 838102366 800030134 555187404 467045282 446258161 442522679 102515683 633983192 103920126 936301596 103692401 640049966 368394069 274071013 689785067 369256547 775540368 530819305 958090273 98654565 972689689 868193442 409072369 139114307 144701959 110450145 843076919 935029685 347971555 520294421 587239650 391208495 964394104 433051918 841078680 830243284 111997302 358931815 513983192 640157696 240264815 238621615 307360842 783851007 494367560 389201203 264443268 727911154 215207988 284035731 892586727 923292512 931898011 93148293 281194312 508948246 964323437 239616728 425900106 865315499 6973741 12674820 619834403 384504516 378852323 499536537 298345638 261767818 750084886 123624290 128336546 111366721 758730055 476315509 939504594 127295568 962264868 160255205 331762724 641121691 139910380 825247197 109412238 902970731 511406253 270815267 796173763 57651692 262728385 419152207 308106906 877820381 55585850 623461025 868001829 976435780 330389165 222211333 583390994 204744423 637763361 169196794 83932246 845248059 840246563 752678921 518086026 743179875 34637562 302867056 790772545 746224651 255730106 317726870 814677235 895421839 604526831 666184398 516155858 361262877 554147462 91461120 512969524 424988907 352525991 522456949 550199713 86554368 621370406 987845022 230149343 868711128 116522505 530013213 633162503 101475834 604534091 568238872 264024980 22878275 794436566 861868214 708475806 920504532 848926928 705368412 824817459 375776737 796149236 533904289 907526095 862334512 666006526 871401099 312154849 825287615 614991777 562047285 816913568 323353374 377048214 767003248 732987379 521620650 798938992 291151705 309359149 97748021 340650281 434525727 359278725 812062566 843750679 806647730 509781717 997750261 69813587 550940050 244206904 268650056 897398775 483614462 772929779 308561521 245503296 913763284 660181209 681568143 83238500 530082491 933028002 801115065 95480215 297081051 541046883 427111147 236103508 460459002 807063902 997495482 691823501 280757965 302557219 788799215 751970507 313806957 990742995 630228637 587776336 904386278 846312167 115641352 868862754 253719732 522699185 819541486 768393409 366422724 591489514 50653720 430955611 996763664 217802119 940392517 877703089 816897031 699182412 24418473 743704571 363651584 578918353 111144331 460086055 14207853 678737553 342944185 957571605 913484119 474550404 370069707 197793418 697633863 197432373 125660162 586179796 635582250 480493855 594695520 672013017 591422435 427643498 189585312 751741035 991004584 552390210 959741941 19796283 324989174 21941709 867267011 526565540 529682409 903225597 936321229 424732338 905492387 984724352 851494834 280484111 702197674 368809573 744456641 977422231 458083219 452088148 486239976 727425506 640682165 996014815 902970378 705451005 123006936 940332003 911060676 55204168 360503703 890070620 881543892 949619313 709128229 764830627 136411451 531802864 43848326 193569302 195733167 698732400 102097907 93235079 807707470 672840407 588671046 244720349 989158286 629437306 295355422 264967870 469416585 855048481 661708503 564297606 415545183 391904291 469757937 974267767 33098312 12980734 558154197 526407394 277896325 495490289 869552531 906879248 432775676 203730494 137210355 662691634 261470682 973566995 620153892 795159059 895753266 569455496 956517211 952690948 653547060 173259425 540152614 366745384 454505458 960377594 635144635 321864757 786619778 790602088 862048271 590213195 437837591 574870133 944222141 788034200 230367572 431563744 818942894 776411058 140931168 613962700 128400887 866517063 558246429 387645876 405197989 736828242 426173116 738294472 742450989 622380419 703867560 314411434 275445460 361852077 303615610 889388569 811474898 471128285 309471363 722936965 345356133 41926873 248839702 580130423 166777892 189046162 546140621 764037326 3451031 323278783 524926579 465889534 217572170 161506866 39160985 143298872 513901466 435496250 552372457 33567293 4422737 677208220 851819668 917546749 219279116 49793692 371980386 778917071 93023591 534806399 828194467 755055369 749013192 100720011 937834440 563841625 934376228 178117958 763138093 25404351 337032995 255188433 957590823 264389241 559196208 162480837 373804134 91770890 478371658 262990927 836369795 675593166 287851910 201276478 672178785 693952277 655061499 865191377 67027797 930323944 220746414 833456854 982396815 607822264 166392587 821874013 809625107 187424746 341511044 191373757 532793296 976034812 972097511 746208246 17488668 546273125 458366125 223433397 431762637 135667307 815565171 145041531 607004608 768083907 768874967 610020685 399847306 41453057 481452339 387162807 333150087 298897827 501402890 788201726 391213461 990861571 740998889 578843783 25985159 73046435 347103020 245305766 608249506 456088228 335877872 348442656 62016400 367126165 835842308 734167865 718224348 534985680 373111410 549517726 579056366 161126843 661356323 451970839 715669969 659040851 317339967 57048938 781719822 561620758 19083975 200117074 532311636 890401653 331143593 297653893 265383451 930298223 976601588 293324740 778998365 611634487 472270175 680030791 466126441 198160858 477205576 536186255 57756262 720156088 515354562 190799471 896239186 359856154 224494955 157308224 562311536 898449335 932490171 298910312 64575833 410336755 55256979 949110494 355398067 420677795 420027470 481642981 571705675 787449465 406717291 144056334 660488133 890309038 589143730 583058728 211479480 970727623 491360994 165787429 492694283 527674886 438466203 614661580 562774988 969353470 91079381 3819064 982416772 401509856 877168283 734743156 725033544 769894425 656051478 848759321 96874005 367774760 147457121 943343215 427368893 463817977 220943380 573235003 110435804 694525604 105804202 534056620 503346928 829674076 971998613 694986344 984957074 120602962 412152218 418349739 947446768 643229261 185782088 713179712 875804819 154683962 366580990 404944462 205185672 654103745 614899019 275788416 321718236 950041740 777680538 656986500 528487124 836434508 707788294 882117791 803587805 546875576 177390071 292113878 674979369 211577216 441295135 838114625 772119548 851938541 414768696 965359036 54892608 860554173 733684196 923460031 544053082 778289546 827598869 960110023 700798464 195626949 8433664 510249699 443549460 190298311 383965756 874320714 221366886 629476811 291445568 375418844 474312365 702889233 648344155 673222054 898797646 496516388 70441074 264047949 265361640 196689211 277656309 350080516 865968500 197600828 797705205 958206159 153671650 40915750 756379062 919094266 589555998 852698876 226124167 815280060 361131597 231031780 786569718 892920524 52368946 702164762 683346495 98480535 96705044 360275924 300105674 857140875 167271425 321034421 668135915 481367333 191661510 532116989 158457980 744888863 581157475 664001039 609674404 360273265 180658475 124406366 292275275 311460107 413988212 833212190 344958667 637932432 446303452 172670188 359654417 344160708 28661635 588591515 823682684 194209379 720720497 297433211 869449550 860143620 724479910 639482406 809775304 494914716 957183521 847966027 525579965 955571677 869109190 935660365 564414467 663076944 615441536 159158911 816213615 152429590 24757859 655130495 476657772 527855087 246831574 838424805 91726075 4511851 725304797 768110500 281636086 96232412 931463505 10421365 222968892 449564167 579212038 669706374 587530260 692496657 902805800 387572627 499967146 118153433 733520962 516623572 899272495 366425908 293254456 117146887 281974875 989106022 831797366 675990644 653182210 694557181 941418126 350916045 937263711 625321211 69152850 666938655 558410910 474658434 656405522 863450353 3515447 235570334 711773922 214048919 922347344 524598953 965282497 912152646 349311983 47677546 59336257 648067929 151025155 117982811 583794333 956457944 578501914 700803471 807162263 349590293 541835635 786741356 470453759 209086300 553498354 773694306 189540725 814228947 248741984 61594240 316820011 291085484 389033766 128544592 433620712 175526542 712401213 504662339 361507927 720025654 803339078 276864760 955707651 140414213 960844600 131943697 211603310 733959994 341210644 151728322 145392107 777710567 595997105 743587777 482086370 719796653 629523792 963782939 821236272 832130618 526127334 709780559 636739437 739283429 782577466 728025428 277873131 913550244 644421260 854927014 239002203 568122761 432436749 318790107 772388925 54554409 28636188 701782705 490634504 211202682 805466316 110820654 669354898 363345755 672301300 569601206 61852017 927308187 90486119 59269183 660795353 203637341 790957541 802968588 480404427 568137474 611615697 623310234 325639210 877121274 670344183 129470646 711343624 695156076 993646865 705520214 150612530 379018231 414764395 883660288 802238163 969708039 302891426 964816990 834718954 644904963 668626183 362814077 230252409 634691254 772679446 353600717 476449155 634128356 288111779 976026964 933646785 506589200 279112545 85737732 884423050 37513275 474470050 911287416 472047245 296997481 555544740 760537838 591696297 320369496 721502043 695512705 943826135 729993871 629546037 586849543 803425726 214214772 189646615 339940349 71261328 761527940 607549238 782283368 729574936 675452085 842437064 101652769 413862723 903528016 282473072 900653722 546382061 190441906 412029238 227551133 202448166 432111995 318029728 985000858 956755057 966016480 448138953 774291169 716270034 899993264 628671973 865543417 394278305 132934520 269573651 15843741 865185410 280539731 430038718 720460492 83403543 356450414 429279736 187738318 392492445 426797979 715378458 384083375 524911536 629861797 962649062 288435256 820187015 171662071 517171180 156996567 16756002 270840445 323149370 978360780 752536729 742393231 152924207 524533363 703549458 676466264 836748390 846044691 336489618 782158524 351497509 800792661 827964119 40855934 533123140 679346029 209088762 743654418 520454269 682039531 151396853 866256716 910575619 926742588 894701757 407798821 893773311 84414960 514117805 683558968 985926869 936012467 783151082 675523655 195106947 607824973 535649723 517174877 467083565 317651546 738566446 725641048 2980471 420423000 401986449 892149578 335119216 376459342 789801620 278046211 61040080 838925987 810353367 113439296 168606521 458764037 275928438 779485123 731141571 527666514 766100666 51663488 167593220 892988251 812017667 789132127 323923708 434774846 101407517 159619118 558394879 668586306 576254482 357430335 806913938 725720953 615748761 536497614 422727451 598638341 138478046 599974506 202149823 294422524 933411045 537506949 983924161 898702051 659147038 901899053 209381586 603646284 696776989 376860638 925184549 921095777 218020009 12185282 868584290 13434985 334791152 992391734 872064064 767310400 947754622 842086144 990217108 891579496 113403984 966016663 664471296 119885128 887382480 118727588 326888087 200995163 85023866 267065059 576585971 131250960 352067837 91630200 728091482 413358773 685516939 540361901 382122761 306479673 814726876 155036212 147506112 79425411 123653034 171890342 676062273 60425655 121631009 786625189 582474260 195196048 445488294 438033963 188231065 709319628 248883774 761646798 604276252 127112548 770831532 935191459 875642705 752089601 530271405 981875200 289294788 783543969 577142035 949136092 134468023 134450345 254521437 907681425 848145967 403943760 549879559 200731298 370777097 838983575 674845773 761095870 135705407 900351139 857278131 565596067 417836267 86677626 431290690 396987537 70266352 354646111 902142478 369521083 639824424 148174195 749845783 907355848 586632414 129962113 395268451 334415219 940005669 392983744 60860452 386232697 119697842 828883312 529579593 931251323 1801694 370452751 715082225 516321882 839446949 784756195 676263661 212069510 796146077 805588505 349983596 493381121 589212075 72532631 817960416 375315458 852035082 563688595 516561395 557626208 330036513 365549478 585709825 288961427 749088706 455108879 798692820 871678784 333128985 776544157 317730473 71275295 832891113 681700540 178611160 258700519 243337582 127156247 449223352 930183568 21049281 530647885 140227883 819739256 232320923 313473930 260246260 572546385 659640907 793382698 280177594 543606988 956682287 530929914 689204268 994291148 731564761 574124179 686691060 149011418 960293205 342914646 310044077 395830921 312005096 692792728 419961450 611000512 192693810 120562619 234515660 428339301 292562574 921343395 578256071 670605063 638940204 622524569 711717574 231616160 573653323 738435353 793953793 701698287 783433525 552780778 611897078 554407321 979489527 887203164 40448451 534021959 759321160 105192496 196311229 637006987 680198809 920941970 806133058 44773153 391256562 938540410 521710226 32675614 204889437 726061249 893183824 440652197 440013262 382991510 179431825 705260265 665003025 509098437 646699473 186152761 523911589 215970100 326142779 761740341 216809507 562680232 199793707 282689390 883562695 250706753 480762895 626181370 679608941 163890580 944531936 411423653 379042336 648600497 363924178 637640462 391429983 385850130 87605816 5613214 715403804 908600908 422769784 390903618 133218620 633397944 336775562 286719878 456823657 664002612 686900605 732299673 865451488 153432207 817441644 481391124 68734897 923468342 127646736 416701906 794793352 365115313 664723181 887747758 569116924 866866096 566465850 109526015 653199162 253396209 921623492 586292205 978452675 708822101 29243840 501945471 205655728 108473253 676217156 141657609 252613967 452981648 388533913 841873535 849120145 583725457 973458591 159245163 843630981 142552679 112217232 503894611 200560726 133734142 663003816 540155839 487702315 140846781 159872156 345932268 755330793 211830518 349757069 657133192 575212058 847299788 788292642 188175542 653752072 497105751 577631645 211904056 584434152 834379603 603096142 318434449 356896148 426276877 717069703 5514673 637136402 240193640 604032332 123609794 117387498 220100651 257071268 195135004 339775197 41317105 172972307 24242782 400639574 262437564 666045442 554970104 711848731 484527576 154981833 585739256 136314775 700737553 342056424 400982709 813402008 30751655 444570231 380651699 52123843 421218237 599992909 177432028 269830101 381745913 522517495 163930556 613258931 616130994 557731168 486956921 572784157 173188260 532813207 541902272 543064533 435180471 891765518 58898405 391265366 40158886 343811341 719305319 776238560 706566824 481076669 644962453 517733424 467432349 43401967 965939593 503799903 288996015 493119562 529823040 774040118 950578519 365216065 258397592 887480457 346721319 52979775 305633828 380030574 4085259 785476753 732109907 431106826 390799123 779174644 739545752 632730166 78487263 326042109 306573849 552723022 723127751 760078342 883963449 456451012 704465734 808842080 226601107 445642351 159367978 416742583 988399532 359381562 479423163 485242786 795271635 495124970 245349978 577100227 948919549 589064576 343673524 215446957 806014341 489330392 905044681 167092215 936027040 768681385 202911600 427598389 448425037 723599368 532646875 144876700 965917545 150336741 523701996 182425703 409145010 366489360 711201890 29991971 566332827 549804603 704360457 586792078 624589094 930560388 476539335 965590522 652936687 482924811 310598987 385862265 654369452 37040635 541642398 187048793 755514427 635510551 613759716 943765795 428336689 614955179 224587685 832674183 119849134 561989083 423234351 960695854 123548926 906638470 917495308 833693384 401453081 767981816 365262809 95752568 297838135 520248091 995117614 396630241 448564970 435339873 861844140 519107941 637102667 167278215 321860877 198673030 904774772 292842115 11929369 73083652 247818086 332690490 351627155 300291083 798102961 682965777 678218186 248665174 733526661 29379070 385913372 859846913 876314183 451882708 237055065 484214865 584327110 47197979 227688997 865221933 774914004 280824657 879795177 399785465 829362260 999716885 907219048 362552956 305648705 168381716 534300956 512222933 693928666 122656679 62929112 476787071 547395946 226482654 732780948 356687270 203977486 875864132 688752758 949170257 430012406 889897038 518506047 477387190 529777286 652094259 844746839 193248210 270704923 453614366 887097102 919316222 167518870 627306369 169135188 899992633 656401312 757313518 526558529 163527135 921702709 99760161 984733508 431463103 453938224 206307280 985389596 287390922 73210259 616067313 855877971 416950643 614177813 251686109 234001063 44276746 58163800 360422098 322884088 710585790 805972985 201527917 64428212 696843724 119173174 255027413 846112605 455586752 788170490 601228395 27298593 392743855 26393053 825782556 563949912 946060627 734978787 35382527 379992856 383432766 664671604 550045138 298848077 834046055 802503258 481665139 959773570 374983321 961829535 689623430 322668034 182786760 184509835 782726789 81320409 84559740 612552407 702484866 898905499 946790856 335757314 542339101 637495529 670138059 829098016 850237682 303442088 89875885 10741797 58663999 688025403 826730871 292896840 660275149 932839065 103075121 696323146 797431593 971124469 648691129 819637292 533734707 722060139 704458740 813502593 60272081 175362475 801523112 179041711 625498082 404801078 236984997 639067092 135454167 290055693 649428817 665599827 40505150 294519511 4113973 754513145 678416564 910910658 941974904 789315339 27840297 694742031 337639868 504970399 885975895 864623823 719570916 165653141 681522560 99836403 529789800 462770337 847878169 602134599 194365150 91428436 190393580 140260290 397921521 322577403 689074704 63174110 412690300 276189216 246001548 244912373 195318195 584785040 326654707 467678336 827421765 822763293 201381745 938337843 720618095 968222337 997253938 682233620 187832142 693674018 9222372 295534520 634353930 211154990 935877685 894718126 508355675 42089027 350352432 408129763 885108483 554896652 870913855 938682517 760174324 333058518 934416696 773542657 777393229 677438722 852016954 716009737 518121777 937604380 401275057 184495737 947468494 957950359 434931759 637806461 6223886 221470466 985378585 659443909 731923935 485344425 682668115 633612533 313101707 918426380 788472104 495167155 327897864 986233790 711454172 45901541 873721405 741003073 47011586 124742420 76700267 515867232 792891180 675654924 635549719 951246364 810896072 989494589 779212402 636373250 915488143 904498890 262024878 589792090 116758936 398433067 801213087 439256974 657376374 145437320 653863859 481731661 722659594 189409079 535254860 391269387 830620340 60414731 24790350 157880600 608359646 459807162 708815325 469934433 704917671 415002035 348311837 22466257 908770038 488203276 349798604 981848123 51472648 659446641 228109566 140319896 283334597 410288314 342267136 542380286 985809455 370117229 132864079 800507944 562026388 713841265 162379845 617763657 95460623 271320406 682225531 78258592 115673799 154459078 466321998 981285053 888942914 732972620 380150112 353629814 759238011 13075718 799479939 112319257 791985803 541521059 339846897 863356984 31773104 310666343 170598684 800110115 323588329 183608591 458161902 815291192 843982628 819665966 449371905 652242346 778488267 567294328 863308391 896041977 458853213 472163834 912054969 333502445 478035804 659677033 391337762 833711174 54638445 29148214 903415096 385282207 394330472 744256624 395676690 224704 561729363 27900219 584302597 44404723 267185025 48880162 279214774 630821010 994569572 882468817 159952676 582337141 861764195 802934976 730324707 50893233 422169317 556103057 512323490 583992490 751922084 81895464 129111812 39920712 212862307 997148334 170468724 739259453 54596066 539822856 172914735 483504729 415668950 406633708 61698827 179205233 818727266 204289191 3623206 653697993 410170927 23245914 475940020 761514009 276239706 170753936 932815338 298780639 598759957 57352110 579661103 406476703 496139002 642507071 864743535 258743221 60743415 842696242 488576059 390025707 739658252 235495939 619800433 743978633 591031330 236920699 999155003 491919859 657556145 10686142 435056633 290160707 85992177 943257072 310503304 539556404 844792961 385664712 292816715 558524978 534170652 604887856 770402016 286028748 677929 371745869 390215806 973539425 440569705 442020560 431212142 943986381 61674310 499811794 701826283 574187750 927632130 372098178 110979770 69250555 81691388 828999649 380296776 185948188 14062310 109595290 553604923 651561337 242572002 612706018 144636271 6141978 916256425 172913297 107183940 730401789 498312632 745334833 224396281 516612321 712287065 277091205 507195924 673550804 681196147 768725106 594613949 431339531 999107799 364112930 22653608 605943938 501126544 347569284 703270024 895849244 434925352 646342989 422316014 855304046 213300963 821290993 564743674 140766942 399136734 366216881 564570055 694182870 440670279 204725111 574022427 910097171 419562386 82306792 103816357 402283136 998103801 185998126 117534526 996595945 8216842 678971034 984635125 739872036 221408211 809210153 140133514 174785339 218193245 516975640 835849210 336739322 924169551 375277636 108973141 770908574 512699474 964919714 675277793 209746480 778745966 105066748 241567191 186530571 307700424 338876813 211268539 81319687 204739746 950581962 797248126 176697799 746800857 513163910 323603109 210468753 671580047 498539575 892685309 329551755 920715367 550531020 33205102 278226616 812028973 143986533 714142192 848926334 636353898 398810370 282326213 505752501 40778780 11396962 485120281 780231889 177435255 50037081 153884180 559651535 502748723 979659144 394283978 468116945 737996411 51696997 98186964 117923462 73496934 232321980 922854022 52913954 852339645 2105148 476249053 964704971 44277674 394337507 411352420 926349177 196033532 638008339 397414696 644575080 818396204 790347510 138534085 356912513 196175704 657121041 148584469 274279260 449699737 951620552 452767656 866894217 639302392 252218522 834344705 503412841 527273524 808342344 718599466 997152287 884488322 720809310 398974343 58934184 779233004 766977738 548500869 447841744 28793698 9560486 329328363 493614585 915358194 486761303 173171216 359471641 972968466 699107062 736797331 626676624 234565798 287744316 617607066 211691100 153630629 849246237 948747727 565277579 754802422 308668635 722305641 483776927 870057423 898755338 585126574 549184566 948873257 285054926 542625052 246364471 124418894 715867673 282275329 650099419 950053340 140485187 235861799 382744324 426647057 399781247 560829666 585971934 194012483 758233158 473656263 677812100 394142741 609811693 484363678 193320109 498966001 573647176 30204193 675858793 4517451 510640942 430825068 937029210 338883169 690593815 646445998 161641707 762148960 136431280 823174193 358290493 242080790 270455778 826111485 863838549 690125764 858596475 351406470 495735602 867123483 611821394 673274578 871386897 121734285 875390347 244210778 658443547 179961968 493008413 347596021 46608254 78607137 633631507 187557613 732871960 145986090 888510758 338863500 601750933 180158941 482574336 241227834 579735305 188651516 656297132 228593233 375218543 313224996 211859062 530041367 477656316 793192987 930550263 66423069 454588484 195099349 360327420 920303906 701389836 241146221 719017492 308060041 113771075 458036211 737462438 10027489 937919360 465140452 7665054 269208864 327562334 258734979 525761770 314155880 956056134 252335331 818326016 770956692 548473225 250347377 183407899 312218392 448697324 669377888 221478116 483729489 20652226 394473318 670831700 327738683 540983183 273215787 848078237 707084455 94708504 195683253 721110461 304785629 201749474 276679326 464128936 175575626 570670292 183127747 21316352 623502274 271116431 637783480 483581152 496486215 301293223 147417488 520441253 333983311 963476240 25156946 393241680 972847287 148513089 295751089 608510221 979666925 443527688 581344170 865761602 57963693 434417132 294476396 164765627 131473475 120460588 599699650 822232606 756975903 578607433 848966427 377212134 151392316 200821757 548473641 386478792 846375135 715313443 360787080 83125408 323906254 372347949 239464767 594697104 121015480 481016692 822048577 37936241 35194810 132609148 388675793 948442141 266824415 410177059 661841473 33066665 815324928 918030373 146907156 362383038 529428559 53972741 192688770 739558051 550144494 731786011 396173686 498942788 186243355 894801139 725727479 961103495 568455195 704917907 180534310 369864848 468389793 646510641 944102959 735214033 656271921 207827288 379924602 274941418 864659932 27554083 724229063 373355484 690574767 607040172 464074515 431291817 69862724 445391305 285150287 141835491 871124045 943120319 137022567 370261492 135934092 372970864 264472606 377185082 131817312 289023018 876297708 928661282 203192340 402031227 91784264 155848789 166242816 503634955 331276363 759710030 115146703 805477525 934105457 552004500 759138043 814119989 774350539 979264055 519354673 109415392 598591982 149414816 263726509 550282960 30088802 545113526 296325402 999869333 572013827 466894545 76364148 896407437 969746504 135475959 693865126 105148475 201465047 76490414 895774403 548934778 249446600 33882537 273935399 864922483 836545995 67468880 427532994 694144736 119556103 956908205 857651237 672933818 720873165 321685275 362195398 438441045 704404136 64786787 957383637 637599963 597762909 379461779 169224641 881948670 970251110 171897964 413581760 771222987 395573354 917126036 543984113 637565470 893459409 537123046 68284533 692955881 534072967 72628150 821375609 364083357 789272149 354439833 836494958 662656794 493101828 397845357 709393555 274822242 74554164 889577275 288583904 76569764 576917365 277362514 243374665 299176649 374788814 125736022 633165662 847712601 596204795 287065626 94334198 251324555 99621679 417449658 624540940 31322852 268854050 360352000 756315545 159308880 968684998 329688900 489326161 199003512 671603915 131138461 497950584 905337722 965637821 141577945 412681703 251582853 749565027 474855338 55877979 765744669 469878365 702865462 347826192 717671703 24222130 930399698 808230240 613298884 958482205 659988389 808324569 333662127 861661340 322450738 67155935 255886584 72965544 701618590 528014070 10216907 394804783 79911494 440126674 255891312 841514184 542590878 421154559 37831651 395022880 316868741 103745779 900578826 998854144 617240116 566387763 605778714 94351743 120120331 458711534 556757485 802227916 163133949 10598182 515951780 226250036 738112473 516021757 652117364 216538213 520367382 944413863 782837557 635868141 600328877 39007085 247901670 858106770 743508240 879321925 487655115 354381053 831049608 763772976 207141714 850296875 373333085 379830911 402538973 26033745 790535099 924570404 849029344 126714975 535704 835376975 884096183 888282952 856440389 180352614 44743726 460036145 455409235 312589486 624094956 467767482 117174138 462320756 608404920 706070634 762044111 177187460 144835441 775344366 543785156 479261579 889219815 735658819 793841582 16026955 194422196 45386615 882456879 749391987 197716899 459256306 266289933 186656600 191762524 131288652 487919402 600607467 610331209 552831144 515026229 286712870 973345704 670823080 281588310 633709282 681844533 452028031 843079455 257428876 410428104 57809162 59677654 850950496 374534789 276146433 83759779 585068482 862904612 264654575 251933215 602822573 187453931 451534949 630090120 19353510 767813301 598478703 311232519 640727206 313735923 760319358 70255705 167907713 449643954 699058557 388390067 844720219 561216530 121005743 58267051 200100738 108928076 812589219 484348966 388032837 809799563 456932005 661351642 33804824 59684093 882244493 858094391 48724192 667455229 470904060 810167079 945273413 708563949 344912975 285599924 25909167 924874726 885341785 682227413 556280183 272278259 784733705 65745376 528519225 493945132 115901251 286565547 284066236 826836326 823896515 327407859 714156151 673390120 725612064 568343023 496318319 364402722 41505192 553688830 701368903 1689987 66858297 96580088 190667875 845489129 634813493 607341584 682983603 879274230 202485229 305202372 795734392 797495443 605545853 774198876 918569176 13949579 881994933 463296447 908017924 956905281 223427933 746667450 235651265 21715213 976000017 476673043 654457519 173678748 544610476 155326346 678217541 409797792 424353271 916150671 719560950 920611569 434202345 609187524 923807373 14019048 242278312 647465754 649284412 517312115 875471482 667420466 545412455 951532691 790451366 515214166 173921709 666668300 161493578 769012793 423800228 679107989 248564252 5854025 371690052 637938746 27124503 190853929 452959856 253534991 900312293 627859119 323737832 69870613 736698635 74437514 893854979 338194361 975161696 799729922 551324952 191835299 156555500 136752444 897291831 680481045 844004668 557676778 746682867 963786602 85439643 932540537 469591033 687348693 24236393 619168151 63969157 299647024 95011694 731389926 838915857 997797435 806001840 340969280 586922896 273895474 712092594 906441072 931583031 467869566 504687307 265532034 498835336 885901803 251078463 221764801 345545127 592189780 96633832 290154800 755376789 902738322 6458356 939532442 242304711 678390765 535267680 376250886 787012344 52685085 816058802 201038253 549017239 404393435 318632973 775898672 624066229 527225285 644852538 548746079 774221027 363837179 940064317 644119143 299153751 756378480 457331064 37618584 295942400 432527650 783925715 589975218 370293928 456876455 243141974 912316656 261552048 740761855 188723491 631247490 810826056 595551244 825126647 517298681 842823578 504758360 791747295 735010843 69111212 628286567 666714495 420593639 712196644 93055217 48271095 206502183 335625296 532352612 557844717 64172864 213644739 415969245 891580888 388995767 610120079 693341169 949968961 20368720 853352079 878880424 433745196 276204698 850595759 155860198 258787928 137489920 132204136 596904380 580258227 710898455 579020337 617579272 123057139 603334281 772064812 561632340 334158697 824081413 480175376 935942329 614817466 167710629 876239728 602627491 8669924 323901471 522814708 925436641 458039207 410532983 999027164 907005264 584545169 382531455 662909971 576008028 246213229 694597075 321508733 827758978 507741191 169812925 685631552 503120453 516352478 221396035 48736862 546856353 106035616 94481698 211592704 822260195 852262751 182534763 112271587 970922833 818071228 701860249 600409346 9131642 248846540 477551951 739338819 216814193 346456544 800759431 281757629 767064209 688274221 711337801 454922462 588573403 260514807 799974855 397278525 409881780 39829682 431238118 646345931 571793382 755456840 520674259 395322152 547674976 722338761 915319626 62620412 506766778 608709371 126457169 510324341 22622391 962461597 949205822 844996765 987875452 552651455 337070838 917488154 899574560 687124985 198367076 519769646 69517228 996180174 125951872 243743130 763905669 770533727 287604465 86062134 467880660 231984611 864678887 128749335 397701806 678966580 375697158 761002754 839675291 513335180 27172701 690925277 9079639 850770614 806875161 159206793 345206964 528479259 177709253 943512019 696528872 477154089 238113894 223827103 36078132 676189529 89998216 136196335 181089746 209047627 260807405 933946703 715890229 382765892 825446004 624181964 204549626 58828242 609309602 404284345 749778382 846877233 265586473 521463432 502027233 527754651 949069124 169798007 338735915 536872016 310076507 151852306 624697727 260938395 246089994 794261674 127238389 724759539 996427277 887907139 323836316 143276041 725252629 891397238 852706159 858307906 851358195 626264049 452223917 379880054 620062984 842172725 24821928 857804994 401945371 720434633 295527809 8641485 450461154 157133334 154198431 40137118 965472193 343915257 466155762 494230307 923317179 163123687 279663475 42852419 806021046 618941341 959402139 102025265 438253908 314618000 416305411 556043300 494204877 540431614 801441339 554993949 458367872 448589391 23134798 627511140 246806852 128680355 918105813 455057420 212981516 131266622 835192063 242372199 310207771 160874228 412078238 672344146 247155861 21828763 639056462 77369511 254662668 797712007 313957414 880026053 183027026 486420986 579719559 161322231 479931612 124020913 221314905 942131125 267619609 791820015 632694311 917502726 894560310 833847882 425400596 923580136 509090677 45020608 66944396 497817473 58094783 614738459 448770668 260724425 950316815 893061247 949335783 58439518 785859208 577167654 209461464 655144357 878105868 799702273 652913414 582862754 172182536 571893741 735920339 768907465 518941043 514599398 473530283 309569708 213613652 558844013 93987537 231866855 131548881 186949702 140864987 832638761 217430230 944689858 240564059 346839625 93041339 220131606 777868799 603686281 626421195 417726950 525120560 750677026 867468684 420572200 633210522 23797135 211538720 937580279 623203550 162807684 290642717 745545244 465928094 661268302 630051672 339224402 198230856 924788585 608606817 774418383 944139996 814341913 925883307 192678492 360985696 837654468 907431415 598451300 79793069 733546359 258291145 188170360 259559485 190200585 527973295 782615394 596279119 850324023 123697649 892158653 124001675 998483119 1911773 92879743 33599559 581942597 243805829 695655668 296565367 561468431 653896910 61179144 409484278 578699678 732778457 683912806 804909168 889470338 401082890 245292980 350323731 48973665 645190952 804376963 918487873 747063116 670988113 498020393 116251396 980477193 997428830 774767156 418808046 76428768 743684558 556498084 797575967 391309740 382806308 790354088 266839386 483732782 649605069 996473103 447913601 347858917 902248081 643343007 969166150 432229604 697667564 257645780 500885883 973554856 917110690 856918531 535362367 175836712 401965516 571380631 530444617 70619418 244967236 339633536 114775707 803727757 444435948 487493784 780574877 73094486 535936293 690158617 718252052 208796471 941060678 351615318 518210642 706163122 822197163 503510659 970078429 377978292 643074213 106016170 843226318 846465285 262833730 442924613 197335334 158769098 449688802 481861778 965127634 300655749 167293194 519304167 102940208 901931480 806232361 340569904 153150110 154460922 69668925 381604774 950828169 340073269 836516839 469337471 304667914 471001976 31294796 542907658 915736013 499744449 313490325 953613667 108239200 668923557 656201930 571853613 873353249 410792166 307199473 400811770 734469328 980472241 940313695 861313178 961368147 211732866 613372053 854823569 630452687 814553602 731266869 293969795 539409515 377679236 529404857 90481577 399097486 372684621 73598772 170771674 96582565 920893997 365531071 689076954 679499822 433855759 215400277 158650344 422016361 592365008 695658768 309798350 438124626 119234289 469934445 668203774 156334794 208570842 717150252 592388484 2213311 614598169 480099093 263673736 208198457 64152196 105970748 358055589 391531064 793410842 53706215 204412468 563118549 174616739 937985038 195202611 20822149 315677064 12154857 909140756 15587028 673063759 676216724 745897684 173413897 556972794 303089744 291526038 638622252 308823510 894783476 404732714 675667135 142212395 912413938 349827010 758718964 74930422 730825579 379570122 105151508 802916226 803096081 941459487 527681840 273046956 200180979 822521940 806466178 928001861 842211235 837861647 419480415 476968967 464006795 51948637 368128233 600049596 617050856 314031027 276229070 456157274 407981138 907462268 372709020 388860868 838514344 397364295 116309371 318886422 964259678 597914330 460643813 837273749 357643375 464346833 186296296 478107452 680971894 964557332 656408289 295395564 945079608 383738238 499075507 840637994 691624144 913798729 636390369 236711274 520841359 813010834 400054906 383858786 575584940 95681165 936443629 759990134 565256318 715980028 281695162 316341310 861528065 104184349 827988878 723934498 593022721 603345995 786796613 833040646 492903933 769752197 523619858 733342819 948739389 782303947 122984475 92410358 195130099 51254406 78242992 94196333 656066315 388247976 841442497 916494093 154416950 649581382 613918666 662724111 57382872 948508949 88371194 529995951 455546912 727437518 475063081 187128678 511742673 739929580 650386504 650683499 123649592 234632833 187069129 258245051 494282729 893909608 705176008 863822779 534652405 529941142 989847948 655155165 226295726 900714335 720322996 238613684 272820632 629464955 905238985 574930351 610572916 923509150 515112608 491043752 213091852 885360475 266659813 760670282 274047922 108278854 36737605 385839002 745937332 579590068 886517453 630527624 602137636 370512346 819197740 864175202 843736259 723072170 778324549 579288583 14579997 993837738 930864951 382674176 785877444 366507776 595708360 4331819 66763657 250718890 143440817 279514418 23665537 511437303 424089875 442608174 468171486 456848552 642149843 705318495 236947388 65045442 239910785 432442052 519322969 798130174 958071967 580001600 252058219 486791123 178555461 696533406 447096323 716826473 657117220 859200480 419554395 196535784 976288778 240387395 360719838 695381930 649785096 940421246 268883146 990930831 56274748 629243545 468967727 708344100 384115626 206174182 674759502 742586925 868785561 345480490 157797609 224699645 240850431 204440460 854458492 13910003 133665522 676869349 135677160 714999147 510367364 928041139 97944443 610702334 876234564 135924086 665690247 967325740 433677231 736252420 922566324 1756560 666213590 106764419 305478811 950923937 529124198 195152019 485541922 939626987 336884543 233651716 88343910 974372275 255582402 215613813 285255136 661243396 547682151 501968052 422994196 268661139 471700432 483731753 652343225 436107140 445071391 251456512 458800865 499187721 146016488 491840305 106128084 329971508 24686979 570063948 226525140 883444271 145411648 170639135 591005822 604578341 407984504 53069318 454569525 56085387 511920203 202870070 917002291 412365078 109404557 870728509 657118211 729814109 821687554 746093058 48984533 995641209 616369013 867680627 955685261 555624490 451294310 54281697 838421460 793187523 817818187 406828321 212543798 4623173 837628936 263198952 807851207 183952493 799151284 32984183 511223940 89568281 248906145 132900122 40735850 840339501 388635789 550549035 803703569 632186832 264221680 942338737 854707249 565505778 100783039 929176129 27942317 300273561 313994946 755670029 823912333 331111506 949380788 536213231 763399093 565825216 642384647 448697331 944560444 34731750 407012314 695030073 163149174 128174775 476164626 405833904 428988620 731842122 399008963 681695576 526443608 994303910 874690717 190619813 983186329 737683080 289980915 821901801 838120279 498125142 605966010 802949716 700063592 588185091 412135796 773238582 751401408 504348949 731148748 669684285 767654281 940531185 635616273 746767145 691063162 920228420 762322102 464698696 488372282 298921366 876699495 56235941 497733957 187832772 487897884 232618380 944176877 595024717 193071199 821713613 384015408 104433615 259160736 250201543 910599424 989524670 703227007 370067734 851831025 740814480 21103137 174705649 158916484 800337017 599877483 980455175 344355228 729660985 731140832 74588541 439189707 922396709 136276386 482573735 115796328 513268238 642636780 107071813 246166772 796360926 851132735 804063942 95113237 940996080 49101002 143336485 895116106 217776675 663376666 314812899 25211557 550513643 526801144 322606028 84929583 373260116 298550820 283099264 757135437 126966853 97120956 793708917 282812414 702344101 822188905 64506218 307489402 389250139 473911671 563884109 890729559 317226057 997514485 969266308 460261785 49408249 721513980 269779090 824096115 604057782 250953830 683009032 245891283 7286979 330850749 521711750 829943060 399521973 430456945 564947957 639414654 255916093 812430105 415679216 783700712 910331841 94983308 273213109 27397081 711924059 670769110 335715743 833891817 748003356 934175233 147860991 122607665 729712595 883006795 459813993 416841520 810085434 881107091 799587571 666765940 513010213 665672736 189799065 663301672 101111515 69148889 771051664 763878291 218648674 538404102 317706043 435924984 380279898 248466839 462981076 223958075 272644807 251839668 890553165 698849538 811815308 580830714 757078715 776332950 62661355 114537991 488737918 245715838 36574755 870848001 410214145 471527395 791074135 538814228 934926299 605762233 449017268 631461861 670465996 465157762 922766010 284825658 166765617 681484895 749836530 726751623 990121197 438359386 14357728 208858028 795294491 453080917 239930851 757219121 494146668 307331774 607702540 152759879 306725573 555696643 455916965 822843083 337155912 447192837 448725926 584452670 853557795 665545914 568238620 577311394 687609132 818331224 657285196 379684166 981905086 243422104 189896030 899939699 946378432 114161147 942293531 987956850 748400772 700904449 841059053 513437628 37375823 986478177 244795572 554591291 715129114 106782 866438309 806124602 445574370 935517560 410260516 634917172 576665942 381078982 808594682 873437215 185965075 538094705 354912301 272288306 315576473 544171681 583784080 14330294 971612863 459482947 510626867 900064833 245142116 49344516 70402370 530000850 968333711 769856173 377250724 394035720 698994915 209498700 74765598 757367014 799489199 547557202 177603293 218730923 964324921 589413479 420930517 625812602 374087579 987702778 158543650 961384831 749465605 835384968 903256074 675073690 163968647 540083549 725939635 600983438 398513465 70444148 377290201 971722810 944576548 311456245 15992763 739842504 938487844 72309563 175317453 278737256 371572889 498289910 155981169 46473978 763552096 642850477 193989526 496065638 895667879 800433317 55370053 653822836 853230660 537091287 523154683 582226042 104178884 408936226 205823111 479391986 386619315 840678201 720563602 37886191 644153457 689990567 113007046 574126204 758926724 474611679 853401974 717362453 353077597 468281829 998210777 612240180 492175409 185025422 489587358 999293026 276295840 794743686 706419046 396563044 72448176 574550810 80453857 698850842 456926527 670772102 575902740 500710351 367346831 123005168 507237636 987102965 651703719 247959065 644639122 138418562 147991459 302081286 945396746 130424087 581471588 631604578 695992459 840416500 829546894 929899614 449145795 215599067 193401653 463827632 748745832 64700 545716133 91628815 348481823 86667145 514738747 898540690 492929486 638300683 657903260 142578147 501121208 138174178 321910388 81527806 188527130 470070941 85656595 748673554 997732635 86435831 883545342 634360667 51304204 59257664 535872944 381860055 844689807 238007630 239499124 808258659 673274713 389220406 37612006 958897374 144877093 444210509 359468183 198941288 996686984 828462285 65056420 903896619 69333842 949128547 203883715 432179418 335731896 374370432 701692469 636093383 277119933 181164498 593631258 282496529 226615873 266323955 851222996 760216029 159995047 114521985 58292936 282444040 916275018 777747488 100992913 395271361 722604920 808627974 447967010 615780864 577386133 749074966 683284694 436952358 218232491 429453615 189275331 655211021 678802769 107551516 53962901 292190694 678133671 931564409 104984869 433359334 208420998 578839562 871598478 792244684 100233666 181512113 682590109 764771031 56443858 911242220 966250662 920943895 36386288 148497702 351514474 552436241 526758640 863240357 494788635 274107797 582060544 689172628 18332751 273661759 908980806 347448574 995996637 219749379 10044412 47603409 712301030 69064941 587449500 114596652 548287770 43166717 715576117 35604515 667372895 541668896 333274083 307015165 132391258 497831632 26420803 967361934 716198675 956540598 181649007 414334660 968862994 683822437 169074472 632757936 719450954 490330895 667271364 863895894 275662545 517440765 195164360 327189850 330027782 971279169 312943074 383797133 579153368 968513160 229722770 743051966 71023204 682493705 705154347 797971935 335109004 143620163 220640876 760735933 385060550 526896313 947973059 246803407 196349470 598094488 363582517 952390870 612972174 934995368 459618946 750883905 139372953 254200079 426772974 384488645 883475535 819239139 604873010 251285112 946517260 457398845 641377031 69839051 458609953 142499420 280980754 940693304 620086473 669609271 950312576 961530376 466850724 802259292 17599766 890090912 744756550 74593731 605763963 122214053 74878428 431465441 57511543 744938120 397123359 112346163 334831527 399446095 612163561 707781907 764054124 480538515 542812437 41018125 58854553 86207605 294143726 53807869 80503091 979608348 615090963 231455356 124189346 988432100 61000058 421875573 361829683 612196799 863980492 982276461 130880216 960969164 623363919 546030457 834281071 57053962 470200682 20880475 130889928 196752578 930424722 459220179 891474632 885841210 351433812 809437989 328425905 520593846 271532836 765801488 63682593 501836056 864413561 996209561 578664202 183395655 713389035 93283808 265585233 457448 298052924 567482454 131936 921922999 281201712 160842360 630623698 660524368 604466451 448816271 574222963 869003198 14140052 411552224 379580878 758394541 918641640 152129887 130471214 967858256 730282954 855088970 812690028 138280076 41048358 50054362 101055061 47677437 318738955 359088087 147458905 107616557 617441789 134601465 395460394 774597733 17544340 796845261 334693112 812136691 493935531 904621255 520467528 481601130 1652409 281124600 943627884 956054816 362099037 197362555 289752059 523967900 93637441 443746666 318137315 988388415 325428042 354982815 848657327 734835237 987339088 422367777 677632975 589085045 564697177 233748638 660143339 637746057 967235264 479861777 403260548 822802955 196113085 624911759 478858866 483755211 38104448 842845632 334671279 808638574 941207985 628938949 847671130 584729273 351175189 626914600 212843456 550228366 616654497 20881883 346007225 842521800 77956723 136512638 155041291 365797783 457540075 490182059 546201529 757118318 539543641 679344803 384702449 154143187 899533237 925120309 205310752 748308273 317710824 352954995 265106418 567987206 454737871 442959008 835113741 537976719 995657740 920191785 592301892 94374758 119421390 928180459 61625568 697689423 211544274 727388125 461165364 294463517 361748628 903911930 615854412 547361747 566778325 30166755 244174355 8091298 574819043 345779792 89914386 348195085 441289674 462054675 543074290 358990962 601151016 656967236 120367429 332717919 264244485 775535133 114841771 13655934 668616896 218983841 456353788 94665628 288577709 234944022 786800226 805992573 213958989 636917856 316310684 728397917 827858715 498926333 488506799 213697555 466177491 127452242 512450313 490404908 240679233 65549655 998547857 527247658 663960255 682266451 6884737 632851269 522214016 431168473 442528631 291517662 259518645 624182325 667436487 468205407 193520958 927699699 119790101 927380779 945527719 416016400 510866180 696987078 819656639 550235173 327903473 697329352 769440862 662774180 517238353 825788879 939233735 416959426 355702853 996211179 563237529 409085575 219904021 564611586 57500767 434356644 972240816 532823463 575233180 663349258 151120961 342777918 820760671 128983073 733381805 823543880 312412168 238154516 494652075 759947550 274487553 910326694 382966733 481622435 440428727 890383564 693423536 558107395 497248577 332229469 608334263 185492244 799212037 348737833 1128775 455099389 344968129 526643143 85387013 136383319 235524910 924510092 347238267 426725875 832232155 961077811 245257406 250816295 430083869 271970298 954758832 174388325 678905416 931459856 679895595 578527598 793865081 794509156 95740913 969833204 217695340 226899456 430099764 934140970 700210723 937296394 517116571 432516746 677993128 614186014 937439845 265577055 671260646 499494279 77123 399211276 469977816 47163747 297360262 18503491 757309153 554091996 527676587 76948404 85573888 358499965 220213011 730167119 344815109 702473870 462135610 528464354 633188037 429984681 879239491 184013732 530030859 922252469 40309487 648069323 529824032 129238086 334025236 259891462 508082151 192487056 34751537 503540198 974045942 917297942 252156952 664347792 784126916 529684962 822898698 859286092 412903162 10631887 882592718 614752957 750335097 101058668 94253239 210386030 646479404 793026132 400813790 139541021 133612813 286244322 423299903 187023396 26109100 546885026 901755390 85689174 557813328 110617892 86094244 473254575 791060690 844471247 632018422 707470088 815129314 629240432 16778680 590008730 572234719 586505834 87766175 450581097 208341604 119736640 508779329 602299293 524967236 617573370 70482542 950177140 460569861 734079465 981557869 724252886 611260548 26139411 924196726 892576517 274550268 594079491 779406023 311301892 721066445 60601972 75083001 821571115 62355080 92106332 641368282 762956249 145108929 677833416 862632701 608251508 371212554 860068868 559274319 478560617 89923076 49014157 942708952 234685763 32067823 782688602 129236658 705501934 396033573 374468312 505197599 932693081 240752255 151791249 280686867 443151254 234726685 281869773 524696636 816267107 888746787 216396712 296895749 924347310 469142258 88330131 385060776 515335306 136905739 892477633 724285697 739952403 22724766 919682855 39838749 121848342 466544466 619547561 294132637 236090084 759743203 28105847 69356035 70992973 501676466 898631248 389836807 568085937 403858138 328899818 611673113 274712148 888709650 36867758 894842969 2858762 721951603 976000301 899459108 5789491 917412362 701950838 662009275 566024208 303127042 590631186 583314119 717079835 511260862 171897656 771687973 590856992 945001899 869911880 881655378 330030834 609836203 890539322 94427578 833474887 903264725 181982113 681144850 872188837 908102235 537448117 802962619 643085392 621386328 931181177 476269920 749649016 523518466 624877325 483511448 878575813 151617974 929328017 212768232 580758078 970750067 911416892 511942285 8756669 958073288 480857674 191543676 548900584 208151447 505880638 699288681 695413450 927688915 753390043 160067918 103890646 569605441 755141531 877433900 711572904 154902890 98690910 340947391 478943639 909362776 180499525 452444176 582486960 6003922 417122575 236454111 575527861 834018277 668852302 403044412 902965613 837695741 902252109 180429675 643798375 821246731 352448346 761250960 458525869 622393139 37421845 153555987 7750164 381143118 970533789 278946715 488285706 449224487 790196882 925378283 643355321 579687884 327551823 208746095 923870926 355544753 203197761 454910289 582955678 957379577 507932262 919457435 557236159 592101698 415743068 22292003 882765999 60821807 783650972 809367984 634941142 16400746 786743864 749949699 873357060 185988680 265964691 446340100 5016596 38414185 181716153 10402614 120089510 974670533 397454390 331699452 709344658 617624890 412030302 627812814 794804728 958238172 29290575 845028850 481956232 347700476 924778677 337117258 429907334 445722574 977935397 678202478 858641564 117155057 162703125 823500364 403494284 520149373 986243265 248043524 445167803 708776582 199915266 191192661 360179224 735279002 585790190 812042696 657189094 502856648 803097237 96943763 474229427 339083585 768643169 326479204 67113667 293242619 256873194 515351215 666047246 825230152 416533335 292582066 394730341 441203636 2958881 355761978 516002701 602315135 797937685 248167488 414956152 52381865 559915594 730593206 373904291 904019484 269906142 898785003 937834946 478725905 173836355 785041607 868659812 861982210 151034722 732048657 330772786 1726286 614242214 7832388 971383826 496795995 396053360 544451886 288060280 860541838 881250471 150492736 260261079 925516179 119350844 812553908 126580881 517703193 322979759 794278909 856264181 254823566 382958356 102261877 461538730 145017567 388901196 391188314 343900830 905936252 846478137 89933393 528995793 322067182 419150764 638317904 431393506 524317911 447934690 307008280 472193518 547132114 608793912 223232460 366844407 223044349 508829725 515186488 433832281 245592477 747161974 835881625 754295302 183910041 654366108 480136123 815704766 342811252 84809723 602926766 379748175 437967471 947581094 946854664 269886463 673115590 813318656 688168675 29672518 425796330 217244183 288566526 172993143 952043325 583328394 793550691 346769083 948672916 668175357 313937165 436002640 670397 855747415 9172169 536797570 908924338 77099357 375245904 505533499 355951757 315851105 536325382 589138865 172218351 514534960 246762936 490474339 572347205 36619098 915900207 149313605 693714101 484398070 785749772 749675678 680985806 240324804 129106542 807310421 561104230 31313859 424284600 597687957 297074248 729427422 778078460 114326467 618943702 909519018 88012350 1398480 811565135 818752857 916761725 823508529 954464812 433233604 384227203 298247638 280816111 35068019 18563720 795946567 983711250 53807711 764671596 935682947 796134339 847432536 996593299 312949416 940363548 7022537 65712543 695837996 318523778 613054585 767155173 657984138 899831991 362665969 684873161 76985298 998967170 470932368 130543626 338602005 144532949 823796214 193639091 853099689 856745146 123223248 180817302 432348445 142747833 26302952 962741184 491887400 411353867 185899289 367628485 719591394 368170118 737862706 344594411 628936104 119259032 663778229 134566970 961241338 952794607 885504456 18584549 931169261 879468428 923360592 994011476 7629524 469490525 386630547 907741437 792779234 269658764 55223000 16874423 999277742 500382431 925369561 398367606 876935302 170911924 790004763 378941277 318924934 167756106 530857623 226440847 166614486 504097268 600645299 802106407 435627310 730114224 660814346 937919828 978398351 156016311 828340458 886058421 7401242 100066409 996727985 792976687 367604893 323657282 516020684 115190410 571660699 287526957 49673411 606233848 170967151 129902925 401496737 421836192 946521435 755638730 473125799 614638201 828013242 524432007 146622653 633775343 434420438 261793969 450203238 345582965 69122675 875705570 35733776 410012674 990905975 879488428 669416925 934036922 79400681 958290795 707955514 274966539 970980481 41775205 392598873 730920048 629239708 403722839 84733079 631147635 750792667 431869271 818532525 605610653 155847339 710619353 608835787 367342003 829722606 99902497 378205069 702448758 816038846 724313055 130566540 157694071 297888921 603865708 371386139 855132035 713555042 558027766 582353990 764157715 857865331 596597652 9064618 803120935 98656321 224762326 397364661 466196146 266131425 463021499 371153176 563224263 592072517 241410194 79322886 955977614 700998059 163665883 572583705 663309804 853924501 531019129 785154916 86108593 742218551 327071877 108714588 291063064 337008569 499803591 794544200 200825972 925303651 814578821 447737559 605904947 506668267 432169076 327768019 591245771 554037160 972021550 512546470 86960027 796987074 928379268 845856633 148567513 973150587 379698641 46328628 78927462 499392713 26897861 125393593 686467770 141027388 648714822 590775068 770900138 381924084 449495367 594232072 365820314 293249524 874678431 381042030 782360137 238763035 485976028 793947550 705134940 556730817 690214482 607600079 731640841 123814664 338983057 575559858 987878611 680691827 225151864 531293167 313824899 973615219 196718874 265076114 640880794 478391798 242319102 623902560 551313355 164357592 475914715 965138030 920871817 577948658 387146793 69909143 421989651 929002145 599199634 136212530 598047821 283401076 12164466 841780738 923804705 406874481 684581343 571318267 435232537 470899028 401963092 464151002 603119672 526335435 589937509 871411206 127799742 568511745 77273372 956700361 785610305 22622347 707308236 89589663 136642335 189336170 204917549 668175331 496797207 780945796 249861390 827709549 857723735 283743061 138806409 84599984 243712297 429320906 655065973 883159514 206920637 934105667 544428094 908677387 148688481 119411002 605828915 534860396 218036557 989719695 104272836 635886376 999039142 876716763 877698392 308692173 762979420 720712694 290820436 92147574 238534685 923753286 969384683 562484685 797998292 193509926 359820085 511008206 234356004 77708705 230031127 712903670 10885560 80954797 471751857 418328481 366394215 788866328 926079934 855286339 524394023 668250835 139826822 30170223 923873256 747866502 694913215 83926623 729305601 342924194 213381950 397007087 311273168 737076867 418149631 117776300 422198339 525138329 569707208 557503972 140334346 575637923 809507837 624080826 413821248 383270225 106718877 261312488 836654583 945499096 171818606 133389594 558596200 217360322 77725349 850356539 942261561 171381993 195141226 830831851 115626514 463163970 921418307 152539046 102343290 174578816 153344676 462016124 112901649 243307645 752741348 438000327 286543858 245200586 666549307 491910816 237247323 718998952 906675301 927205392 988560680 952522685 614846422 50934893 857796019 655776622 23771931 502981377 801592284 941808316 670707359 958335901 667090435 352086800 97866413 188602055 220837296 316246161 463873502 416611718 321523899 10160309 432607871 821215186 873498541 362628815 423336969 652335841 546670719 125292078 224207785 231140199 352311361 877601279 167872849 670701333 109321722 749267949 155632598 269434140 594021988 290645509 680868210 385017991 751970468 490571795 550880992 555761382 176574893 916537416 157770962 875483437 262146732 45794520 511143209 31958423 31434746 620196396 772822246 320159484 240618069 707584259 658646641 115615804 953994730 407215892 272657157 277943394 32741555 6223555 234294236 449574133 540902082 120586549 124275041 502909244 8069251 537027992 249451115 26234157 204410319 283498200 771649518 483927464 807702643 911627336 15444180 234359881 171492861 631722447 987469544 924011092 435177268 784266917 371428248 116879065 869749865 568009842 726946630 792962659 667411378 124980110 463550575 309235859 723462740 993532399 752758294 580436881 898315121 363232884 225439662 345621525 63498509 489294803 315852404 888543677 420732433 285537347 845141309 117562476 549806628 189160591 842096165 879019484 830262300 366002588 664527380 38912855 780761154 290622433 197246900 533760524 255822530 150915176 15075618 758106336 849215771 930048487 101376140 511176502 44087513 271309131 741168381 949131247 678635779 339682047 687338745 103499590 668400322 661644903 488443117 265132348 635357046 985541039 778554730 978224170 710056075 728687704 429543547 697513481 17399510 594409579 37399879 907505765 974569241 291947895 730807382 358271105 43268978 545634439 219228987 579084123 603051092 913493885 667944632 873024692 413850301 263655117 556533243 649081073 931372877 436528631 433938223 666422668 995689469 607970650 281982954 545187162 75382249 296010532 186128514 6475218 229995244 647865402 251520834 576839068 582715278 569675529 110263215 562519533 733496692 666339220 557848124 538639559 177500530 769607787 239516211 490555554 98150000 245427214 104381550 575650656 349688857 673346187 455434527 172206801 128172453 832372351 11033995 509749990 828021392 179650367 138451350 514229276 692019945 558154863 870882599 684986254 547972072 239110207 241002192 31590380 579077335 434843849 276246214 616634414 587483091 453893798 850263140 163250183 191268347 76599434 16341029 965266237 375409278 740072686 245455618 66485454 322198880 35586114 594369026 768207158 221125929 15675320 650190876 737823187 595434302 85349777 515915624 576228773 547398326 543665869 261364649 660790033 475471814 65509479 156230311 901793048 724261688 111568213 744463150 527500737 724994616 259963187 567338984 194077091 648591690 100113573 655999214 205259764 195576959 874621804 199469668 23392119 701712622 597576238 767035774 574530935 93950608 598642183 102037161 107025684 356501398 754127418 919707028 710378590 883039608 422657140 609170395 590585528 482624682 470644662 379780223 991782566 484757592 199217819 37107458 489224746 409052885 946138143 894858866 629354320 429529037 599744395 660708644 476301765 192527998 535260255 304532216 96778772 429198043 435028464 208607829 614165572 296705795 502329910 27829657 135782666 270022676 246204858 283763182 343372824 675291394 437316201 593554906 588378731 449643793 401889793 135983272 640909920 579279767 864335583 579617904 414950299 416535207 283042941 662665562 171317999 122088336 92639946 360901999 561354114 924517205 409392444 594282212 440752310 572782223 326970097 861812260 599673661 715534138 66999910 867848308 587121938 925995785 165957458 930027128 513649845 122001742 775980149 322486437 702046377 42578667 307592962 131860356 400808953 527327859 859372547 727718835 223247137 678537422 108495243 192942559 802913560 693388242 50755220 541976115 706358249 731722583 331207543 125621693 721306041 623808572 345724267 696584750 408460959 559012245 580971806 664285117 748746786 728784415 40443028 306052405 165337585 636343444 282195394 640184642 615548415 531761017 519324472 36722344 300167311 791735446 245632394 921197497 738484768 195160199 716492553 803988108 340680848 621862641 311985687 373696377 327374513 850462129 629128172 231463976 231413526 241273734 829939646 267541086 866053404 258194708 41654193 48251964 711304165 104383916 973240717 217739453 817587760 234926781 846967971 892836027 234042388 824936511 858361285 480131495 409137045 584468315 114038968 872435202 877825144 333471969 152488833 272108038 432847143 811277127 150750754 769179797 969435039 18336838 625112030 118103165 201903671 785350258 411533376 642986231 625045998 99540033 669323059 644628432 364507500 338942406 61479112 665352006 868832865 58823280 248814273 18016465 754421339 524631772 142244240 11280059 142198278 78630809 350241830 289302129 761498513 66319186 698874689 722551916 101283420 908049643 179442456 892635583 525201374 928619084 619427593 14796795 574834264 577312979 455337053 205894299 51292498 881429845 668340022 617926569 110345488 751104620 481683762 275211216 302492894 927410967 105183711 520682795 481670830 820302168 39817760 169133775 116902239 334088156 262985907 658753577 582873001 101907134 761362217 555619351 235788556 20472243 131297507 97155679 529060503 228694080 448583318 152990311 569426203 928929695 896049250 127493292 978002852 544096579 633260584 318501802 285622110 353117123 703447417 904918690 778997026 206421542 19004844 47897538 824016694 801471929 963242014 38429934 817869193 120801364 261052339 666881647 732007956 906803094 563795541 442768342 22745749 425698088 993991336 581373426 18791165 452612837 827102209 698897162 832262581 629684541 42565547 759928402 64562154 310761739 329521940 560568987 787132660 677918213 275096652 807444885 937297455 479739438 679821150 194615676 741328063 524750612 372837370 204361361 663798316 88207880 416061786 405575294 872157354 296762739 11545472 349033374 675986336 882321540 657026632 639107383 209707331 396494170 128096316 599849577 14592823 902629294 321278000 705434824 36760864 410017499 144543863 566957071 944202719 496635816 800809052 155455623 928763241 266622916 696704876 296623556 551817378 688111820 491568715 326859020 402471810 852715809 513763351 465967104 215415467 239866731 736161817 513057363 434277422 443120554 563128572 808419202 603039652 1676743 357834990 861136800 787281868 99213829 314351692 733348212 890959442 539214824 698558415 140477397 402438909 929374241 809144611 691103016 940946458 556133391 205837401 77210108 504155235 617232825 145552599 849193322 881105623 20151313 383678970 114048650 428890680 814877310 382724700 116543256 340096344 292287255 579175784 290500556 509610382 488682916 327469215 571141056 845664255 237381460 46536254 697029069 852443177 320909552 847288639 547955542 554291083 734204896 296901880 679827412 269557992 921003282 838138177 337315263 263771695 127488473 837389484 526101387 458565339 429488053 504351824 956409023 465560774 925319946 514803354 965200349 358938060 977575822 989814104 788895066 857360264 585554574 724162633 8219723 458272449 943935286 899891882 293211345 168049619 975651600 238124653 746690969 513368157 632892608 831603010 410583639 48808834 696024231 816678957 901411824 941877450 387597203 828380062 762104684 339598007 888622276 461820072 460325071 413921793 959779050 501567257 960505683 574177272 557210946 309394405 590380419 971839687 539050884 379226680 950074813 952740979 871674959 444365155 525490346 624056721 44375576 756001005 481128658 825714363 870246655 461027011 77118629 73975994 591064376 404889634 749332245 497959275 628909693 917289950 349367029 21200316 776518164 170631584 504238519 927364323 789435982 636927479 654142172 679628360 98186213 86942348 705348027 729577703 430730664 492075737 157905259 126678144 982741775 905339158 544153529 649571872 900772256 986999437 212459614 481132723 640806213 912756918 832799020 14002946 98841424 199303673 653851412 526452618 602810590 182893616 835604940 335257805 198379101 906911680 28671034 214153393 299586313 900341386 38441976 292801618 574919046 587837691 852759607 979262361 777728997 764627258 204988491 691794140 169128966 671093633 666383909 907558679 336364816 342322525 668632352 232456102 739312833 909932909 934865974 205031839 691800661 310523676 849217770 615250503 365097726 71464550 310114574 50265878 353592560 950973714 570884715 639005799 262435367 988934948 483129349 595726770 121182676 792104974 680951714 486995556 653455161 17208913 725664025 350155111 827425493 579732147 665263370 741909282 668322156 600525372 16498761 359477512 630080407 484780369 956277822 306291272 789398562 794293271 239972751 862426339 674761195 652478330 889605834 436844380 495212987 146277870 603469829 45991558 430532426 191533629 732960439 957324468 274024429 809218611 726432259 382516428 891455543 345519384 773782654 13208974 187516132 88161697 593778370 637238942 809390750 834787035 714392082 113011727 142208241 335411019 635543214 740376033 513046771 852385701 556089398 543245967 973636063 421297568 32225630 581316596 897192888 63276459 484814612 535552034 538915566 84290794 796640828 154597261 514865344 976009820 363824639 434442603 962068465 645827323 586020920 180472618 896420700 150346587 757195647 538857628 481538357 747616310 902558112 172601632 329816220 115009361 98326342 338951054 124336877 481798721 968079456 947941427 139947417 114545241 241072395 464113708 302304849 695602179 578335445 51785948 16132806 913610351 948890470 270208884 793044828 607081787 323275664 653556516 327488218 360778073 552851133 859536150 303007535 280223122 677435587 293933213 68815778 70590660 779509480 310402689 92191559 747167067 672554747 524523260 973423657 781945309 573573370 766809279 835554736 672555241 210861463 335058670 487808687 27039160 673633794 484371269 772963849 672290452 892537272 419716192 755075426 865226622 944937725 897436679 780033008 616433400 185650590 103032230 61944844 509898171 241318412 438709619 652975532 130347916 334537211 382092231 664049642 642403673 52379091 783822335 453925066 826291781 297745736 562152333 60293468 843978249 268769877 368026435 557934049 949086669 575251089 211674371 392448745 302834387 393481075 145093335 723073038 855349783 575336385 839465242 928324150 57346736 611775759 491785395 212077612 94484804 994777392 817780353 734025285 264239008 290836790 418236704 183765866 296703067 373577309 356403039 863573801 399104659 250883582 520387689 962151055 368758978 71763984 591590925 346970712 228830909 525531229 119205675 120873447 660371292 102237380 316044764 943399215 862202182 767544418 583537922 45223570 405860195 926092497 142001306 114781823 483491853 707383559 502637240 472010209 379390416 590530015 90201214 367612514 962623273 883540229 780470687 377911840 734618614 879435356 519332720 211563519 328227436 967858114 674473612 948351005 457759111 885139634 867802419 90134560 735926197 450903814 494511193 49050106 583325340 609143347 132428094 337240307 339486119 906034185 686632804 653175970 430274325 802327771 154578939 780862598 98760078 249781034 509649145 232563586 781910001 394649875 662927606 697259049 886470029 130513078 295105523 721196186 735427230 679090341 550952370 136351031 648638365 247698953 711722112 596451225 825565987 419049985 124911490 755675963 97037868 367363478 188715861 281682740 966849623 561371815 337279493 128354343 557754894 5013207 151122580 786576091 481261667 808786448 640650779 146850916 334485254 192725130 359666619 906959265 271818630 549474821 580884955 438749558 70819355 219266470 475776745 537824441 196039855 886689436 845700522 805124903 985164491 439271234 928725481 173641113 779354501 951710100 570618467 590289338 431378377 190554183 490231730 524153562 698268381 913830933 907386930 460189682 964020692 978166836 245735198 365113033 500704757 606530449 813926988 527940524 765787673 191888534 567797659 721402902 482889201 733322194 659848443 512647728 782741621 835988131 296438499 180973824 427859351 38779551 106061841 911473403 646741109 382241202 759827410 661009574 229446754 76912771 793554245 505297502 435490720 219266289 959508192 528307456 487760408 334581268 230123132 716680212 721654383 228590714 800819702 705380194 617534201 408030388 863334956 523679423 630236086 867343717 162080023 798663595 802486337 498808504 432717318 180574878 117456564 577530977 583068872 443364434 209270127 785917276 932696508 438649728 797149525 719210780 208907407 237248733 759089618 110257522 749549390 615896319 345743375 597028727 306130563 707064183 835115805 866960444 588376028 217427983 386854179 732046219 127913195 243371858 878258839 682318656 647284434 299318846 643961703 707109194 46380367 968640930 261579923 340908039 528801163 515007954 326440417 311899297 405099491 224565731 709630353 584242433 827277387 836035517 724147032 554281096 916530621 549492285 340028600 746440289 739506600 294838885 66469716 467538066 45417434 688979043 713080190 568790915 433122638 423524418 730216160 739768764 531181082 622733603 191675827 398679971 406426477 203353047 148581305 99572593 89052138 59476738 209995515 177925039 865751978 149270050 435986146 510341147 950829579 749854319 223931196 490025034 274538720 432451360 341919005 47077930 376310247 197555785 546791697 73365970 900165307 993075653 208562290 672944440 348381767 929936595 361428072 367820388 838162968 451898593 98633024 491465585 87476675 627830696 455123531 380998093 540216652 453933760 225102125 234759330 374102378 812637994 566248385 696161647 399889863 730952388 407243468 700844279 988720205 955472092 430801802 209156713 65355221 185493594 270385566 854616012 263631278 342926470 147151629 904118983 331469641 907421834 951373267 776964511 785261664 218332491 406315867 247481488 459984107 48242541 249074835 978306615 555657933 28982847 634549655 616731754 733280842 639561137 300733956 488050350 705270525 471409239 246298369 822640865 749968249 159284314 478392785 140287698 72222409 606503457 656714156 232199868 370772089 8152427 800358504 150986111 388856815 39611536 181139691 944226281 895966722 814747481 192275441 477051566 32152364 660714499 92556859 420261433 359066494 760605938 522865589 659798866 240759063 417964418 227575122 116817617 785036172 259520606 626117883 432399477 212409436 309364524 640218877 786346623 275615401 987795424 637236863 13714876 726935813 646427441 122935106 853036733 578511101 550783839 144978700 161799467 268820907 953393044 914134931 724712504 151235409 222454263 603229584 581552770 547579708 770951375 28870985 657770230 275131326 6237 392654763 880656593 448080453 560616487 984776691 955343816 130910947 992764920 969896568 950444461 669421469 107114621 172681753 458153317 278104482 149980811 927062814 202279526 907361569 291998310 932385751 981259443 719920435 538970175 736475454 970016623 970968982 215759960 513007599 694077095 867694579 48562921 157444252 270127683 433264388 360257837 598268825 468961055 515360028 687763410 522323041 800011224 504587527 720521282 859284128 917247098 200978252 664802027 708075294 31970369 994795592 941170324 912365427 160410595 169425516 555984917 385638032 201647347 146641562 352122608 893489613 796551745 632147965 321751337 388249862 418642671 59973743 117999647 622046435 970597227 493064796 836348241 319704487 880717512 415360395 945595377 236908668 775052281 709556644 492064828 272338455 537789768 622896997 4082566 94668780 98611088 947506699 717695268 193830190 90165949 60956334 116907050 838477238 909389594 172839181 698948147 364910654 485376712 267228054 706103247 553596178 283791461 134204163 900847742 740210978 543243912 610351652 18605902 831350246 28228142 659605126 17436262 676336202 692560463 391512766 472490061 461240326 914691903 702552702 400228564 461009222 802887813 398095886 825177475 102398283 784717689 735825833 118281243 192127019 588611208 62738000 733903983 676222448 507455392 810897113 141241923 648268733 749866932 965222698 25143202 103755091 289626912 65935229 407322449 691669230 316379071 446445528 411558272 460422283 931963860 352313352 269533856 847733679 339712930 153477180 660986542 285626323 780108306 224696343 272616974 16917358 160773076 902186357 376068897 768397952 57520482 555656167 756401073 144185852 60546338 55467050 29863913 894231326 962483741 382488702 181695092 10482029 944893539 310368500 43791099 684191137 948847765 10287869 190102833 231419417 945637923 528228393 288896002 88855896 654861725 905225580 807245090 835438480 177478152 365423198 438500160 405995135 557978162 383806149 495188014 740571682 90318749 76224997 710305436 790287028 314882562 622927552 693628700 150850500 687997615 442287050 101629171 129262887 27539298 660803353 13404409 241238730 571687308 669985971 326041310 458124688 203783636 235361632 615204478 246112997 175113452 478069881 93750575 753191288 825770126 722406014 552652462 152683523 895574329 381322310 589193547 483397982 249950239 546733144 573532425 280238807 256323086 953238325 534671019 576680869 47214694 731307106 1864248 344714877 46689388 975821576 261603784 387668557 374725881 666913725 703881702 595292653 42823755 969213365 326946687 999904901 687841635 652041536 225552053 983820514 290520782 392951766 509235564 988192226 985109827 228268380 687420239 892978805 447420468 950021184 16223693 65284720 490665368 101447785 435591529 427254006 873160000 188860235 111973504 307611976 667509001 16455263 150746267 319511759 995371653 226991058 471902206 38063590 873317078 786143278 232573061 473807129 832556762 104909941 309357878 585560163 330478972 506883129 60373768 944217750 903820232 773747454 376726759 819411037 527890408 231190049 340696996 109126698 637538266 16263924 720207511 456269064 69435212 158762785 83146849 965828375 486014612 537833430 505474967 38007573 531603737 557813317 482311882 745173344 830923228 644143531 193777867 778813929 723056976 3186205 38825192 824317655 812307330 75454919 810223718 994001168 319851538 15063443 289142834 431883863 765056707 291533881 610768897 681023941 620390493 599731582 677136253 419222114 160473675 103490659 750757502 233673792 819445338 920072377 87010461 608092738 841482365 398373695 232720695 756711237 927465765 181768871 765291179 353266439 384583391 871416310 991028938 192653905 770477220 410789617 131407290 621137323 738209112 714669202 682239336 817586129 618449300 366041993 51025223 395567310 321967890 291280393 458669482 478944402 177004941 768152679 253069872 772525547 287778069 438122180 802024003 37508501 653542803 363090305 814457963 420846481 539874705 211225788 949360838 748324240 977430789 49540165 284025946 224127157 389032740 302606392 409506579 631787722 517108406 811030126 246644984 806006726 292157241 259446699 155916576 487643889 638561897 246245974 749925841 513288850 692719908 309265856 313624076 299610527 871758265 541084716 956496835 816865585 623134359 240933563 674392590 540832708 817069934 526852753 428042100 101063725 47808871 776980923 735966829 882652798 321996400 80896331 578625356 41199039 839649901 463592565 106477766 267491512 842044112 377223875 428912419 65158294 907474720 761539369 211322699 837109298 799799114 447529457 811477521 982389442 331144825 48971673 993280065 353741562 282833276 890165096 433640896 511245680 499572077 66210191 437220625 187936098 247265901 593962758 448243049 247498168 397688397 942000150 343156222 733841796 122735884 553138590 958102925 260927762 673892590 401733511 502282123 400710416 257613829 63063195 626334082 244908451 39856615 717099430 530278507 702887033 594307066 520690370 888038288 448936712 266438440 459939365 421938345 56367986 127252462 156584707 112709897 428257269 821486769 349683122 738087245 279957143 308942107 755035032 136207141 256786531 136548174 509558593 668342116 911267924 430727863 411237138 516644684 971939784 592391297 298315768 386795315 993891706 940503440 289706707 962987246 714675185 197314135 425726306 151944381 28809704 774537675 436566571 504720707 746068122 838058501 362701343 626696545 67648928 482761162 52340249 739864969 622961733 251596066 698339171 167953714 139928490 509929610 34607811 922818622 610028147 882239515 42763921 152405091 54595888 728178751 82080168 947830535 793884725 483169592 447327094 110774336 175054817 332641718 214523670 177514277 312233310 488722931 529612408 715697916 67358876 453938463 759786780 844106412 964255015 83509420 68859678 154731296 765440556 799610002 107281063 615966170 384757276 306079585 500321340 127243922 482214340 631743981 954199381 305424419 637760884 174882149 220922457 917695357 786078697 777255511 229953815 67410166 311476853 713901912 728606465 86374616 329518568 660114877 243699280 435700949 636524743 161566972 676073467 933232851 742481197 170046856 979711998 428877310 387172164 824929867 143968257 707018462 465561813 701122006 632716129 620260239 17725752 666318503 528228069 647745611 478139747 630005094 979848022 917772978 849504415 232221827 722809912 638229903 381437213 62253582 418752099 160233891 976833923 458400035 23696313 469584187 171142579 643694213 140192188 911848681 286774055 834264533 417686991 403996766 73576714 942410195 180858741 52472260 921531980 152553714 661917816 911449976 484502792 345775176 895917824 596780052 96035810 786010412 540154822 625462837 140747867 576442772 712347827 202666120 776181251 135240234 853631447 662320522 905740423 165756401 9715400 628480269 164203364 656681253 545835427 309105055 180329091 291872614 115569541 300356138 170754345 241291983 380886415 784512735 102323235 797935715 312014370 559023119 852761057 813869978 193359275 699449499 615189869 11363562 595431406 384791727 215895857 489909370 570952603 833921332 270433632 193969011 841719234 244837343 180980916 643552018 516009932 351108588 972724576 628709650 947484527 461339447 674642989 857196092 694445839 784554563 973798333 285551065 704142645 638105203 158159162 136935838 839254961 277020926 467365437 388577394 626772728 422443122 535691272 581465773 142195190 948286044 593510632 933125740 690559331 607191344 829480929 299969853 45565207 418173901 36400217 384984880 914083960 153030374 845643418 587986620 801487311 347332434 745489087 681883149 350546787 926810178 785212885 273539726 122714452 29567732 687595397 715318855 300148014 924420171 75400250 373599121 822206364 738771786 485570400 539692933 356395318 758482363 164191439 304839182 569567805 407689282 620145802 836283312 31371922 22361105 654464403 348584 823475181 562599323 540654256 443355666 790385693 452120226 560993530 309404817 903708741 730370561 924428317 444939327 525967832 42316250 890151260 976937976 361191880 488298946 767512077 513866128 922310216 605799878 431736456 254342386 641990533 87233583 825356041 917255885 31358977 930454922 232230944 644858944 81908816 809695014 298622426 267068166 665916741 237302771 977765402 302803650 528559972 971885964 973898320 708867237 315643917 769268418 467986699 729329672 653997733 687408899 279780445 93982487 812137859 410821942 593218979 751861638 349625694 52081483 481385989 124194223 576563049 194381537 358257317 706840290 922910601 847922235 961184832 155184899 531599885 663396863 623393224 432248911 4019164 5932009 343070194 255544799 979388098 219881151 996111318 266117536 843442546 372218195 764435166 981426392 754837353 552454154 564132351 94347018 3317993 197453669 367231454 92715362 835613000 821824271 520694528 790212084 101138800 103440295 150039383 568716172 907418224 305789789 756140657 482156682 907164134 421906893 423671137 559040410 125101099 363818814 363541478 381323171 74710672 762980966 192130359 709851282 849881546 215617621 527519574 997627428 48460800 820135347 200234847 903582079 834661553 119943760 706972211 520147766 324129983 750580759 219010330 351479439 896551648 196432677 587190966 760997577 666593737 550838338 657436395 436443425 26990407 585658434 38140491 868063142 253914443 925256067 366569387 41477 395295289 853639326 70597185 429965169 280052527 939691221 582682632 211580171 903170973 623635335 433788940 49629427 667392828 756204872 180849220 877523553 870020478 555508997 736784513 55980185 672002835 367956850 840866670 4119516 162667798 794454585 639440784 162109495 451545251 32657900 654406608 54429789 7756627 988468835 72450585 440635001 91623134 325198947 581690296 457341373 71444744 604406734 877947237 927255526 592484589 51400421 66931624 201527117 520436171 943276293 436583225 324466931 860722178 883005729 909856560 749115879 90115387 634266926 18202872 455851811 798529723 761982252 484842340 640239211 794877863 920111970 157604587 620422108 186507894 602537605 978345452 767885073 80430863 57522217 178462325 729925124 675119264 774590280 936904139 962501737 224425683 523844887 856953468 865260232 244021645 783327207 533176937 579826823 884891367 872005947 320873657 937584128 813594770 614561836 559627159 704688855 398336441 860749424 279447172 436118350 945984290 680881564 633914840 852795308 120482000 710342008 161945173 339013801 559784291 533148063 861433041 836647379 102640242 838109911 963892737 736849956 894713278 596859616 3511140 497405726 341508370 247135960 729467559 533020113 558060191 461787601 731970148 939845176 215311594 649131111 789315013 854744939 311065010 36397027 962496964 111928258 39630193 600717091 695180177 575056458 983288277 794964493 27559949 808981072 397179026 107726545 136272665 769937375 666395044 350322509 124605696 294513372 870517756 356239481 500464667 994531472 726584685 641429567 817268096 271635166 518295363 820708320 715790494 796650483 243937422 697527200 906686813 878606834 754618907 820296536 577342397 893543696 447219608 841778689 251940388 886586590 436620350 238995188 156368309 513291415 534138428 447216213 357088951 503366213 89214080 699544126 948390547 237796404 882182545 635575945 243334359 750529563 29459697 213664258 732870385 322620709 597692269 477658130 959093698 12920906 518036060 897972365 130060485 382026278 941743235 973364564 853264723 865207461 571117322 675137607 154901579 711120424 663975780 226058530 398481342 206898677 387588133 280483963 294935304 824825740 89841126 931436986 319990473 18699342 141245152 492121860 750528978 245886924 103868281 881094093 119725016 567346171 204587432 593817523 256776865 492287582 50658920 371157597 233312043 232383433 741183965 535747902 216628411 208387921 805219305 447212314 797998055 579676875 932394931 56000573 259197856 456923212 207964365 163195421 294541278 534562176 246715643 857681314 350575002 170491814 912900876 311800909 657845044 427371781 539721201 81123107 573373607 637327583 780003195 852874180 33080510 900830647 887704729 408287211 904602409 283470031 280919343 240060479 712515900 47284292 463597515 401445608 560466261 911099305 965024811 511062365 498708145 481782073 765353253 292343786 656395149 223461793 260828521 470746206 856847848 680323855 13522224 606920143 113534717 202867409 989117121 718725463 385253381 763740433 568665601 363974967 454038950 898615499 74683784 746554138 242394890 515136975 320119779 851532759 133491909 361440020 221192401 764634858 69412917 60468185 819344603 403029694 133853414 961758345 991551700 285105290 906830130 759559452 203156828 491702211 321182426 207033437 39848250 751039020 79125615 182063072 286116104 539547748 659350671 215611418 647312435 83305230 8329471 735415754 100895929 232048249 586755465 73677267 462349070 33184833 170192236 569655556 146917633 400839809 631983182 293996629 197538037 471178272 439099686 956910483 66063089 739060259 626767376 507628207 3786633 606413529 203811193 91241516 351384277 254409611 319110591 700108120 479873408 716905551 607630389 877624755 189077388 464857595 456048161 413970531 27855707 948009566 27360442 194431830 79799651 599045458 730208669 411241148 678042880 122030086 564070200 639811424 927698092 522642311 598058824 125417803 887745550 327617652 560375017 501811386 898450438 973796958 41863649 679734059 257872771 388078154 827404244 841438652 357246505 136033551 102848149 113262459 94916624 136622121 11016531 918605106 836272793 581191197 19928143 742228704 642804070 263002212 152693753 509786702 314465530 660599418 173166584 892701802 692948681 78530378 957046247 845609046 380474653 979622551 167778013 868957869 747127933 744260195 128782987 397196183 191897956 381890044 830693220 45905887 157462491 962188137 205637129 340933060 210653538 67385064 254755677 851237217 944106879 695033657 145223397 829375501 268379571 139124443 546869665 824704131 238768958 352661191 911460416 25000065 4261953 160581568 529902311 336693759 208305898 527071077 596626920 801636023 412932670 53335489 213615304 244062425 929252512 86745405 73423828 684013802 406750975 461828970 709462078 601764912 583393974 290496119 446876753 487882895 316994411 316305715 293488258 354779931 296471275 731146351 766739454 999599199 911771553 755970442 906139406 445898996 549436449 49182278 411266647 697323485 705589239 316927011 45068429 414558568 771207711 791075622 148890538 441588474 930051881 326726887 836537996 514994406 659874192 744051942 4174397 758038363 456886742 499247233 67174068 731434124 298747523 159033242 283644905 810094374 575274051 854903649 265325163 90918115 155896916 188627249 153390802 962379568 293906308 610965184 438715850 671064112 967041277 251840036 642991223 506088422 481425037 666015006 563431111 909271279 96409185 620168994 921722887 614277093 353517232 283168820 733699807 784227210 159324993 996267122 561414167 69809631 381756141 971688715 709900876 619654932 136702002 49361832 654697151 533575868 250917975 69467838 449223751 933892109 94761055 384041259 898820692 701383277 553493562 11442493 286125102 699740437 630020243 998463254 668492030 874105727 523777435 295486847 83577442 8486071 634776611 345077681 348406559 186550930 333802620 98134437 351208925 266389235 734470356 949039524 194406307 638938589 602858317 506802105 117456083 972945358 131703291 623954886 726668149 358509102 158161039 214254915 971657900 332690956 929948653 888923053 311752485 567324843 310737118 285034945 810108537 234396539 189338363 190801512 194160937 331611523 577281823 310343690 120261467 340284342 763399666 377676649 112912735 228782511 434912712 581296153 767974142 942958278 505270192 425355482 324524012 451451437 690254844 736483601 281174025 41281121 235833889 225719967 430235997 92596798 451179446 856393471 93929941 874775799 218692182 939775243 732488950 497672588 158703116 756851343 649250699 524334441 29464470 765971074 763969273 223050237 231855661 134395544 396212512 49574198 627693459 941620349 655925312 212819408 278138300 160595737 946868109 248443426 607393304 19335056 521248181 586230743 853898476 890698927 168480968 869342818 487594640 941071696 382248204 564469921 389731700 60416200 202890522 437645357 626186808 831027458 328927053 942095534 992511955 970681187 304855052 606084333 261336721 775975549 7828691 249079066 26824089 164622828 888560066 765041006 890988699 902688214 352079583 4211506 128508262 411948762 814745834 626794633 725272830 294868134 907992758 457791306 5929678 128404353 864166435 332698228 214003722 738356827 319183198 862158237 595847751 304375845 685225498 328652278 509354419 124474298 294370675 659780186 122910153 547890653 842407830 103069644 766236102 332508029 344211722 955935801 490484186 407020776 799054716 103470513 787633620 742497604 937260206 800233960 259070191 363420249 268372013 975583573 318549478 346050559 520846562 104329782 999354252 998977410 9113003 723574611 29468483 934651046 471703397 721756318 229742368 837860934 660280655 476690218 313954020 83569204 853474594 123337605 760418365 728222175 180786781 308723025 75885052 876061731 917289543 575028599 279962912 928170984 944022336 576793144 515062861 583102865 466549526 138443382 522165087 807076924 45424479 755503803 613874468 218745391 562719031 576045950 464651179 131622454 428257830 481508641 587022060 172860322 310103082 1202327 114985035 203210017 849789067 421553444 60135384 231146801 825608812 381629320 12888268 280707036 11413471 99415489 994808979 612614709 407659097 806996509 219327070 43015753 647009796 649663467 794617249 122617363 360314552 716639173 552684805 196522979 855967299 846809419 376285320 617041221 976448933 994701211 406345882 144530859 131565656 520152510 666077936 54854997 704737783 849427483 480481423 141119389 805655027 972426847 423182542 246346438 261901785 834637058 804122055 338577065 948899736 531415859 265142228 255737624 802108682 231016272 993903792 22824228 165608604 999488899 493365062 650997152 944658929 146342264 739176864 766603820 453108560 846083603 531769070 329534755 834710883 788283171 329696613 159748149 572273622 621601870 367217365 413086237 840347849 191904993 486340286 703213510 252113808 874694115 392408829 488169324 496369838 40576271 630029462 722474387 591856991 205841340 773715789 961700157 500886050 759720438 391166537 359377742 284468210 981514080 356707515 178257251 105032585 194808845 648527989 783600083 394795324 441668150 934100547 228485778 437054306 995689423 335556298 167059503 479596915 95349533 756302501 504421744 473107323 254330019 119536516 610280290 795250473 6133676 348562318 648383655 711795212 528246585 863173566 678778940 151352713 620925442 321723416 197751039 188612844 54395278 788765451 5847009 141488290 776538972 336044542 195766001 371067475 38392884 135686225 642019876 191694121 515124336 25765943 505000980 774328566 787036736 128140520 178914310 489588274 716568906 920667202 56119746 290536769 37201686 750020453 485712159 571893777 519812912 992085016 222875352 946730194 712096869 980071515 813256141 637026569 131460924 732772972 857641580 623393073 966159170 819558571 136362848 687875680 992006942 548259052 972771980 642206859 840691779 308264168 937910683 194984464 171592137 34460784 638827132 685299225 640724431 411643812 735136377 934906585 735359991 422011501 317791420 81098579 539354938 725169298 156349920 787289119 110231229 579302537 697554615 180054875 118271980 949923253 877276932 13155375 199635220 544216436 676043317 650176104 513520195 761112387 259365168 532491778 291923121 146885462 439201017 979316877 923712068 294399763 511725128 41647261 252119343 333740662 262711272 431504592 370011821 631940988 57441853 919911312 279532069 317319431 160473171 880629399 548194398 813418933 502532039 410992395 819856772 384708768 448114785 324850038 259745383 530699388 763404615 436267359 151282041 252991128 282515297 719782126 869354764 404613970 408079790 507998603 394847140 693160072 699939770 244399106 64409619 927296499 428537353 184266992 710533040 621600294 985796340 15095133 923141027 694478330 545347767 816738172 974859189 584687168 353393024 844245435 594820333 106537368 384554743 224865972 333635696 134631216 304694020 978805568 4091436 392923598 623644058 616109626 283409206 753401058 866817910 230400027 418376477 898358241 297751493 865834214 800743515 35602076 33515760 60221452 437412273 61844635 32922552 897987177 276894925 510617507 618505920 818668106 436756617 477797675 687822860 663627082 776682698 414451465 852145304 332453871 593814186 943895997 151348774 620623590 692674668 626986032 349999810 720116963 529585487 646716228 177018830 557263967 52206838 195568896 519902044 829206431 807499908 640474432 167343790 517139969 949975029 895548914 938496235 872394524 870404497 907207946 113949767 299330345 643466508 997027166 754290065 557373662 565960861 722834825 254634069 333088463 452914386 713449367 236888990 905695140 268340030 800262358 287551358 491717718 684613158 887730187 200926224 817488271 385949141 288433843 680715619 141600496 262226948 60895747 504909609 900987721 470722189 472313525 831525190 331301615 307796003 383629548 131590191 4285351 839992158 871229568 911692491 467580771 413574174 856975537 690914805 937231727 538556071 956649352 457324612 951258669 848161477 208962990 823820775 233423486 843349437 265261509 176313081 866568060 267766890 604399460 529411035 746484236 239503689 256260349 502284009 101641451 453157438 719985755 433428451 998521252 223864687 944941367 955094048 588746585 94840826 514521384 22121829 181400899 252008196 183150452 249568991 661721846 255235604 68615267 987012901 480752019 609784649 213670539 354295870 190734892 937871737 446316776 62119972 617793775 31291174 585453310 235338109 133027873 760662774 290189988 471438335 726573391 775278660 976116225 623982753 283295100 530110819 257176917 785061207 644667284 438854523 715513466 444301721 392038711 157615818 51291647 36860641 545022747 214524265 738161157 413904896 944942925 113407087 177796278 449280941 847938256 777738066 952747320 426355652 883937960 869883825 211043868 65966881 817900262 262158070 426616122 762795427 656611116 634422229 431231097 194025283 13436191 749823422 199257795 686008172 619301566 86507612 163711083 244603077 827705835 640226868 928142578 221906408 910610605 405614835 465251587 400586546 864558874 515076559 220690357 451150458 734014507 806465998 798760662 844733072 684420433 900707 47973473 782186753 381644395 584331351 645970579 825561257 288879932 149121735 683481140 762939216 816695745 565390464 210582687 304215770 718770438 184469253 122221419 554132257 26370728 316554646 698959619 267463316 935156310 668633163 681249920 217598687 67493982 421100982 117579409 407221372 739248219 147170425 283814240 315475550 427317681 761885771 207421278 179404660 50892172 871014585 752617593 756724798 173227656 541382128 5594746 123581676 189189862 642039798 184645079 421952119 583989653 480093332 557598973 331698371 487115287 471129603 173346646 105075175 961717419 792194235 734857400 301379980 596819363 732675481 86852503 237573652 202295113 252818124 284690074 54703177 652922473 254385923 313908659 126745511 709273574 637520628 2730827 279228410 997828152 42759515 583575564 443224981 566044152 488141755 792530261 10769677 852207891 112202011 513688827 854325199 906173318 2061526 833638288 78241644 491577696 181399843 527366600 295693179 465046727 825566445 663326869 201548972 360797604 255475624 572171358 574947458 589621191 257094144 243765290 619326128 264795011 903501623 282424785 776111577 884130423 52300555 118929032 180685198 63704410 485480626 203140367 639062041 178267237 524158302 808059926 315259650 615801462 785629050 462310022 119724147 273193809 610216318 244764216 777166960 612780394 163478019 450720658 190213859 702853735 962806886 82108289 145878069 700788329 765380327 989182967 270960512 777408218 666655156 114250267 33275613 714855359 565369527 552513427 439891179 231549878 838603736 466448666 474980439 595885230 404096061 111603133 700055342 903436513 296704030 954054 823232060 92950476 383480842 295538528 742540797 230777551 334985901 553280907 982950009 282415461 232294048 873993969 231504274 890847571 409071089 869616568 496482868 166281914 655530097 409264334 492714686 284619795 675740706 917723615 219549177 630458559 715191674 448093354 249120144 214659386 405723973 612401056 347283156 176859672 5273247 59634215 232599038 469719189 818627059 768006111 460714142 533567198 249700448 346762524 117853014 422491462 335808278 279334052 741373657 694113405 838646130 458659498 945691986 610815410 897736603 515844565 533771753 99175781 634128363 310427109 810590035 922729517 997540813 290231258 753426940 545193637 9084483 916861733 644217453 554616180 499468101 313100592 55420622 189228030 938871122 668610011 991262698 539536260 593789865 553873242 694105183 11115596 875314347 730174464 695024984 614726794 273405409 868071949 134063776 784231887 78280300 34121303 100935555 976809515 704991183 326355671 535396880 823049732 157189773 178330497 308759356 213919384 327283041 143197211 945189419 731360661 383978912 250705349 78898296 590825205 173712212 431717767 742060001 598651399 20570513 240740817 561586793 409154460 416783185 65155587 503926995 927625290 319198443 576357250 537596624 88891469 9499706 825638935 613990467 722294002 722185043 281990598 788256617 547108777 953199579 94680496 204132029 603813238 5267513 480573248 854743074 595891800 4401185 566960017 839243354 695690888 522231295 305784404 330473267 89044126 985701764 241387770 139938446 542219953 776914362 681526186 731299956 254094802 455769534 650040775 204585128 920054560 498431675 897657250 805161441 375150778 138853011 206136386 66522422 623287430 616846509 892246175 558428232 254748135 296378596 618351853 733982572 214026711 202176651 774588236 154979621 409433738 547183405 504014174 904384559 509844225 599196105 254855526 21024425 736739654 566576605 35746301 691734824 880930944 145992812 974580081 427221347 109258685 938432125 871196618 345630735 76369975 242073531 891448276 475250741 223198233 381143482 898700241 778453346 130917935 354316877 127543 566175963 200487904 851160648 438578693 17660659 443163909 661820208 386289369 741062647 488194788 192003723 139628044 246297299 240649507 154364482 433038176 672320089 363142252 914872603 377013092 241241777 125364585 623112001 770412921 979944304 729930245 32654271 42523724 680575859 798016848 526676150 380914411 988061216 341613169 297814914 882219799 515834550 694739863 449078466 344123116 595065274 821064520 699752523 494909425 398948583 45162916 409130086 313525772 5131898 384312216 645813295 271048192 711686329 858359764 544311764 337321873 779981322 688227594 704905041 693067448 898496044 808622692 180505471 430149844 795624793 504043779 293770669 178000576 525637517 220742739 566494612 816064862 574315293 973977159 375287110 447011864 708406595 880711468 142785171 973870169 303093803 944220306 333887039 405039371 822137147 971632524 229419739 728099555 617544122 797126428 149344389 546743385 480498284 430631968 1968256 45443130 237268150 916653291 989542650 167308480 784861646 294446163 942833571 453392350 542678877 344763435 211866170 839018282 162828631 122250305 112541009 831997811 147246535 960695618 332635882 403897815 204616020 278145618 382806797 101701179 837494026 62191792 49232388 534484858 298216840 194816685 413414122 47918619 779895645 647637182 799503031 198100690 522594241 571430037 998968695 289124118 593060109 81779237 186528096 63467387 51264167 105318734 506581123 43286597 701306534 622443465 319131815 181842025 854136876 570102207 706025948 395913922 150296978 933276263 397830383 901337989 84374258 500887477 211306915 576356516 798391278 206241294 1624482 300881399 825302533 607969 71996153 505307055 743108048 477107631 833416749 533445630 97650484 300418020 737522628 404278040 938148252 828624111 890895255 835584550 652640890 894503037 581990074 922390041 401612301 188677279 418755534 280060944 286791721 804907534 856694295 205983811 805077012 570431481 13011490 883462888 66008741 448980611 19738756 629895162 332675247 202144233 202547694 562763002 28951879 722500509 793884294 961482326 266124737 505596823 122872796 602289187 873391147 840708254 749878826 184204989 601511226 455552730 749362270 83576074 366571621 332100515 957639694 490437374 797467230 310466164 72195797 91089155 585788631 948292567 422517648 790559280 696644351 362692939 934271239 522824269 633991005 199813579 155816516 437834465 318503035 79257412 837968592 373829022 7809251 31929232 356011217 316944977 188449652 672203766 120488530 712266153 907599285 825223391 766954789 509481321 548616607 67728620 31899207 306923082 244315688 428706205 873350800 299278680 834214075 738446599 607798075 306609768 425953540 395489177 674341024 164042649 962409140 245376564 319273917 39285521 240586891 839797051 530044436 844315493 150034444 237535279 370767284 667198813 53522907 162828464 886609483 952082451 577303775 406917099 91566122 539491677 415324761 575512956 8063871 44731571 251907992 781093253 429647340 219817730 892448944 707932144 667214765 995381727 23636972 525587087 890431626 812426515 528279333 215475229 233454573 33559123 442190073 214619100 396212088 254547212 130098401 696495622 634613992 442939278 308621061 966844775 292711420 305836990 877965831 913364239 624660351 727771954 701320588 674885182 871810158 264043769 900160228 808548221 716847819 729830672 391468206 80824156 959155516 494902860 259583782 845958864 388065219 441145536 686462313 302011085 574219883 175421553 180809183 961754422 586463387 451161052 331773541 111505008 91273913 319261897 421334483 387662292 393663688 344772134 788093952 128391032 627738895 92235586 71652920 105371642 857115295 512597297 418673138 225471776 865805161 794849815 278778754 930863630 287180678 875229815 770161157 329066980 700650318 496336544 266675975 5947734 164302768 885384635 607496328 19572947 900487482 646942856 636892331 278285439 951581445 430162118 773233468 915214983 152384034 783698246 635494243 157885273 65388440 984268737 596260756 731440199 556622951 598130495 880502509 611935727 984022930 625040 910669435 846210435 633761695 830615215 487542907 908047322 556640631 618930699 109496865 631930863 92556053 67450353 60016153 735689463 672326695 905679527 857896304 532285320 549573765 470216533 228802056 728413193 613660003 777836300 328816936 198041793 743888201 573308599 219349446 299850925 884942313 538400143 462609791 170709857 44998015 606419782 306444983 795777548 209329624 960179706 240985030 513810201 116016520 451952168 473886821 927365195 979346178 505943701 588510595 705993615 75976467 991202517 821010798 492213480 791809082 44639508 177612643 36694601 681707188 600226412 503342479 39039802 687463675 265697489 562258088 791549674 376455861 344978377 673939452 199912902 343280014 236635650 438004734 783372156 347360897 672944092 610507826 320623556 683868808 842804053 480777085 771423255 685993072 855259240 274308242 298196967 697962288 597132111 67223783 540557608 929396861 480213111 461604483 482512090 338682584 983629940 819734881 312824754 410095267 999225444 970868992 606230433 768080205 474667089 437438508 247076016 568425886 393232967 91189183 368200201 600043614 982959900 93612167 165098813 673225819 111972072 589634477 358257105 145497321 759053820 83136066 786401489 346596797 52089940 563147125 132095207 40627782 776584871 851448517 677196357 790555748 605970598 868534227 499430626 779717114 195680750 337832985 307010870 514595283 335942139 35440068 374091525 418376736 61048298 517747558 209868677 59044813 224675988 963702509 940910295 942280998 60369092 861622965 395526650 807479944 250782151 921207001 105879813 191965351 308228198 168242599 854822175 239957286 9947460 776478920 329522257 418407481 703294447 471244367 704028336 657161403 876600879 975917089 878720864 247660053 629300345 600847860 328616541 668371426 272558332 121672663 505681787 824892410 894092181 188227193 410446172 720165164 117091003 388808674 595596217 942718843 694939181 130268598 375962322 278218725 980915618 993675167 100525264 736440284 556792743 299010331 439828584 818658038 971849603 693024262 971254985 540803053 303857442 271568416 324843342 132303408 586121665 159853182 478830485 611678513 189872184 56556765 232060808 472546532 628646185 646759492 792084431 919029032 664273524 500973685 971838248 613222646 461314268 842427252 669463469 559451969 586473736 487781478 394401075 929673012 964208780 512412261 805074825 478579734 400778925 237710600 37019934 623428249 893570233 650643719 524364297 324999300 80156662 853384844 116126332 758973350 459450846 829790349 522494822 702712828 958663510 387944927 986463008 703592851 14458736 361067935 629998815 489140905 799079567 767801360 872536080 400878647 412971660 102753036 432010240 445608427 412434369 245256780 977807828 416248085 925700188 468271554 992319023 975265680 747295325 600376455 908658095 985719631 550794454 780702410 645496418 408301699 828483955 107751495 660118192 3121850 311370535 74726210 313003959 930994272 406991625 41298886 410021825 633149039 501752758 236909171 565102336 552073326 216960178 1174069 334388564 712438210 535207204 160734805 44545869 232204457 166359923 302000931 130932011 736750130 635663687 391091437 996680874 24622998 866837365 79161775 842841767 35923509 989334284 125978148 741094598 911095032 135219667 473737724 121214877 766982591 237526373 730800167 762516915 624346401 174022914 562292806 453543410 144053592 95169364 728124839 461301509 142305263 14771989 714850026 200510646 364344826 101314035 823661880 299969827 973844333 890139103 365221072 184385520 641389866 291175500 92741459 368390924 787238839 296256836 220688148 700981306 180997324 808081305 836965150 20948269 696321063 749577972 734251039 744429914 626369707 32832927 322377043 803709841 944281345 529094487 633691538 549288327 342176451 290470902 479659971 678709525 133540269 31033666 422567000 29071532 847418020 934956205 965569229 231045211 482540595 366448105 933044038 155429230 707164718 557955381 161804033 502060040 272148081 456957209 30105938 928204810 671185987 437317260 683451438 12991598 915237176 230500359 670257205 114145953 25641585 251698937 124521589 546293386 436404684 796576627 242213362 298575536 441547659 113573390 427027655 891556044 624339489 219167211 357936919 216767373 229851974 228974003 226336368 567501606 975343690 516328571 143603486 296146411 745153126 44895205 666325107 195416569 814756120 861321287 70058020 489283377 158979630 114926094 773424170 711463339 571764366 986196945 178541851 439066064 705296845 167617703 569021217 106688675 599163544 591569864 769148205 303461204 70777700 852288710 806853780 600595119 136077811 189111989 539898895 107954723 301715593 60367781 616237021 553232233 915072380 661427542 584706511 750785408 708134539 753776451 120001824 747951840 392510427 741965624 752976768 570527582 162914378 26123504 9644776 296380178 569484584 828431803 937878840 498696472 503373185 176348528 930146687 181423580 365402224 999753116 909626247 507134579 806894468 507008564 230646125 840348624 854595554 568146939 126322568 417609233 331619375 31448406 246814799 111647464 844956426 272722038 129796600 221495130 354933423 576061025 38173442 649932815 465161193 412798203 185687272 58006185 890963788 255736331 753921557 879278408 295684432 192212773 7567486 802934756 3007254 835841158 988727400 629240724 137029000 363280856 627841034 13407606 783066085 377815885 729485944 612486253 572788507 784456158 304928172 465522395 156227412 744778750 419940107 390323641 158483709 461585759 761698149 767727355 343034858 427153336 620793328 567526823 530733933 927318517 806445602 48496725 717580364 831416685 368592055 461954914 738252492 47956353 414955366 264242243 819157799 678179164 381505897 967722901 8084506 858256722 534465187 645820621 832750701 162760846 179996431 322007243 22237224 461920366 651222120 149331476 150888898 26664330 891923668 233783012 481860610 857509271 867316295 993960796 458812528 959862226 97625383 659360985 616345020 327927720 426586789 433134506 202466571 683515455 588099369 610066140 783236640 172976900 999713383 706289047 793907906 994662615 478780449 401777559 78272537 361680521 773228842 621786578 179488019 649358598 418408906 587014082 735329257 488401782 438550031 16964836 914218986 951081211 834807649 820358449 786250501 564652810 450489158 190961927 333719129 126658095 294237490 785137987 552104921 973966314 475819760 570554423 842779482 861798216 120172368 133956640 464137799 706429199 59710000 917694473 389073900 716461627 27391028 315434829 994260577 628674134 834515577 992347798 390942660 910713157 464428492 637548397 994772226 527515486 641711224 893718864 72100733 584154967 530450158 218642827 47656522 779883015 81360019 425075188 983993488 879928987 96180327 915215052 676082331 464408782 175900774 951505275 892446397 798048388 787175689 179822467 26657255 923836515 531088442 640039062 278020735 618924426 301005134 577808301 877850907 121701568 352638580 222101110 138823409 493025538 15741043 938360111 574374125 291974608 102651319 856459623 984113022 777325244 177489981 480053561 540251062 962160036 516853471 854407773 826871910 587811889 484745610 604883676 216523846 586057190 173446636 829468423 590609230 939748915 863533842 234048952 369555056 118489553 637658295 551026826 110080767 337361415 675333937 936526649 499894119 592853939 585670233 45426208 386664712 736699134 622258502 872874792 58641763 949201631 513168867 260035831 736579059 958215594 269452717 155722187 699869458 19398998 115374570 999616549 814582481 739204953 478256955 862845480 788794010 229407305 852356491 70269348 793932030 148198523 141397345 266532934 957487480 842564808 85922280 202321320 56314119 737863738 449882887 492618305 875220783 277258199 49733147 310221444 689737300 953410203 658885365 780891206 422295442 728203476 167864873 467024372 966133308 133875842 943138937 732693063 75503581 528074045 17951657 480422631 300580897 753116866 865954136 196192948 284426683 712166823 935589910 809951743 349165108 146972146 429574572 336165341 347917432 329218998 146647764 783617417 858622009 950356857 842100372 857191774 724222325 745022349 264312090 665060805 729422022 112972167 289557926 976228033 889238793 362165055 548453961 113744191 820618216 899881421 920612044 531356687 997538232 365896105 558351572 359884093 687976138 149485633 178977640 432816204 784808494 571433280 66235443 409951973 71120894 879065212 661325349 528594053 644941284 391146517 176812193 393468126 334525177 699823942 112590027 915445905 657831032 109730701 425377907 512602760 220166720 779251262 54378913 95498572 8615045 97426584 934519333 89029525 201976253 864562922 333055073 425857808 16022011 861851759 577020159 20377006 424700795 778627063 589723439 149055028 460185525 441331912 735297623 178756197 619593727 934422877 734576017 749150634 638904973 851972227 189987643 929064305 134252474 886675047 322731721 458582648 457797276 290061471 709462691 865748569 220931926 562198333 385106112 330338312 400540106 771665578 776084465 505674890 383680788 54567523 375422285 261044613 47149515 781862616 981074763 739853328 649582823 16380128 274233535 191129424 765907618 116057845 572079888 617350107 573954685 620621183 410661048 853863190 51543670 150979403 218879886 902775229 483408938 871470282 891701982 182024040 15454911 554911052 962895486 134396163 69852964 947292828 169225513 461043701 209193111 129741240 276198239 372237841 629895123 959413287 669426789 585566306 726287331 61960524 386619310 649453211 820110209 226977030 49724273 795175695 346642620 185045078 899257806 776595824 31810099 410996926 971285759 158969677 785781243 271085562 810545396 364221638 480923197 707399026 455503941 627541484 215181620 732052263 587493404 367376977 790718792 365753619 170906520 118558983 516627122 149147939 177301574 748430054 822862615 407162140 103338102 465841690 789749258 999722772 525889822 988165370 540092897 783341684 330365521 830822483 628085338 368738525 890709677 309296988 393601187 890326369 707698470 710941048 894014646 685545852 390306101 241719793 935511144 327652951 774329127 940579626 340075800 984785069 786335297 339313683 191555792 372299498 568076917 452068873 379112047 942234839 383148846 375995803 309187567 956956435 360717728 228888232 60912963 87404759 692331747 268284752 209053260 19803861 60478503 310183306 939428415 486275628 187883794 191970955 900935808 492356887 514591371 949947178 208317226 63075304 7359405 916581410 966558060 799527816 73851285 562246473 365194024 47441100 407920134 657268887 294656610 51601747 316574195 248587909 696516286 554019381 793093333 189583393 142916837 557066061 971596399 978376095 872471607 655318957 779127808 990403242 218121030 890678150 941218119 445242519 785810495 173713537 526425945 532336003 699481541 536169665 474223718 421584835 775391544 470548143 939289885 681524489 325420597 847671385 527650133 464553790 867698789 318723695 988331691 793519790 401940047 668766994 368382696 643643344 325279589 514340896 916467088 811832414 711466691 398962014 493988275 741572714 603654462 466162347 78670234 476029457 112664502 411442018 76843019 226582145 72384438 344850344 881308610 178074629 786974777 234068811 832154134 148358333 189322066 458765786 337273815 385254008 452522768 882324419 981120465 796317285 167274722 410698339 171710791 579268722 625996543 689234409 159035972 988510707 134146064 516726910 131489749 921862434 789487924 66854674 455503861 566253675 436631635 687264639 770654083 812124407 629345673 398812400 706069363 60961007 957836192 355031419 935474824 809046065 925225958 85456777 984392501 986317881 832162399 318542482 752336937 138283096 150076442 113439876 329295489 489247596 313051954 490410508 235702865 628603457 528172019 556275065 527741539 592130436 762354949 652584867 22835197 807771065 133230102 552101817 52709403 347761022 848646139 217305104 198041937 670805914 763230687 919830997 644435323 980523742 876948447 131102663 553181689 373152531 483098691 789401993 582300485 327896050 609492308 699057775 935713064 274056801 597780953 971853485 854005604 462135507 658686965 297300231 247086208 920834294 872245559 451742695 92446319 782960174 454552902 360262750 438972651 758274814 964038063 444024424 827882186 571468402 173050215 27847506 950491070 281957107 347835464 255087723 178187183 333550099 310313811 526718950 872118694 629063084 21485190 310448251 324813811 133190227 469009922 364151017 473261454 837927234 484331511 271342128 68927148 97528908 839993224 810380085 792440043 488608293 701356208 275868099 201225016 723304722 201211067 135794650 100583076 239747683 359637831 498886641 193201083 526725450 279709616 518157176 371020659 204185629 199559305 679329309 86585666 883612869 363254156 210946127 654910926 148964869 768220603 299363885 350514008 891706094 964505106 265292507 172763119 373058125 152085189 346784635 262672312 792367149 935374577 186991872 31952436 271790549 490345986 628609996 693655698 83024955 29681770 139210377 421205795 796682760 794479497 26697582 770012727 140977121 252278848 4736248 34038245 881121698 39817662 668832276 58618149 291165748 560664636 915909999 908357942 776493206 391972276 585592290 986691294 424179519 562439084 408300401 979077530 152590425 747698915 385764609 419159776 237626586 918798805 783395115 722837492 713379340 868985101 252808645 567903223 296472651 113665744 886142357 174987815 75453003 505277148 375859209 775409063 504870172 397331282 288761588 691279346 537514140 570496860 59292752 223622621 118230240 506696187 596222617 23338891 287491646 250534318 376141354 92952665 533795696 164689059 67197146 193033604 260470145 236449185 53444895 480545411 718177363 26249001 456828725 873186188 926192249 437818235 359417039 69929486 917733849 230325447 558826001 368806056 631535432 103646163 799660103 36150315 569531374 62671823 898498777 82900769 710377210 844092195 4420750 183250252 811620037 449782649 999101221 268770899 591258671 688762243 975299759 986428407 295936924 210428453 84696061 237520176 811498151 969743086 146510309 130056398 583359924 314617407 321212446 320672189 309591195 801785333 635122645 5831364 566109986 483569867 669575249 172966106 751751920 117482614 299196658 448149955 863981527 825271182 458887959 372740057 711362608 361419255 982605415 777615379 9221506 883329512 54369121 558993107 533350282 821158494 571227879 836829065 587743111 16946773 742188897 772313645 295570430 122349406 172312570 573072335 190443407 544988847 519770969 399839112 23472753 421699968 823323695 230651098 267313578 587534434 575828201 780409577 431044088 296336071 468620726 735992531 377785825 851743488 893991519 602993198 485083771 592535310 776759919 601763391 927524304 537545255 173268329 174839723 970971385 415898089 221791386 885102356 117428465 36717859 183201040 480640158 942120467 242491348 753930332 391595724 290309477 590571361 67243898 695520780 55098443 674117975 947099813 283748503 913150000 341882162 448452309 671727408 464706133 307155324 514789389 998176080 519943179 144437329 323772169 287118572 620122882 480179318 814165108 873355202 381720247 93593946 933169665 101015493 446298529 456181457 282231292 678894717 692587300 708870367 588660344 680638665 929127911 672772383 65726715 289028568 518780276 70772125 619908856 911831184 259090670 354793011 993253364 939088714 746126996 474268622 403337038 143222699 865393801 869688470 808527068 101964253 406995830 136205829 167395432 860183952 732244067 986348701 319530755 207418425 212907342 946696476 188036281 951980737 192862702 12472829 294869360 782682293 441851726 823146506 990163364 462138921 787331075 299925489 55322635 211518856 375831785 69434219 983664173 527931984 836131383 613940705 93633773 856247954 518223357 447299475 915054696 24728640 62609887 414033526 163411646 255877655 135382175 790808148 775557640 101153006 124869535 772083501 225267165 501524271 870088230 805862250 6480690 87602538 525141841 785572681 816017908 328948011 655581041 700557708 981713418 768524094 828744670 175175989 947370875 367265232 593651568 65482830 943422144 749294610 326960561 154244628 964654818 742395829 215918727 661798913 308536710 392350443 580480639 563352899 469696606 677702 56211647 291151327 821212029 674193235 316812007 197473863 948527574 632904737 233144586 508695955 855234873 866105249 256496208 546287967 462188393 210575337 348585813 812193447 11072236 159585198 618086823 167316731 156897425 661487386 264176100 294034655 51321662 503431807 223966088 302572269 427080174 429734472 13537220 333417079 451087277 625579344 858369321 940984778 563219218 995212108 618972608 832540144 243019402 311046676 615032425 585733625 945084618 187178102 228807266 522444177 736919371 614732109 523824106 269325656 343918355 305738924 481596225 544414542 545398258 322101610 653085124 76013585 503228058 886513757 140842015 528209842 220277480 509498022 923445291 570550581 597769019 982694652 14845070 701850250 47130434 435666632 332907133 118767753 255814743 622855046 135192303 758200017 175629944 756988051 507267565 666452179 325087297 87230963 450198889 743534057 620628306 129253824 113714084 548647592 207340891 166775286 550336827 56087622 352920960 294569737 982999191 525705494 146271774 857741898 129970861 41043990 663187559 469591890 443726849 480465204 431115514 19942020 12113653 40142276 454381873 321560286 184684127 216790693 203543312 600408590 63676192 67519067 221342105 713259601 28634885 730518401 550626103 785069571 813057830 217105401 446989034 417560439 241525259 132489778 251832581 9266392 377092666 164915463 12015177 380640233 424086437 713679910 70532255 870795942 953304 19496017 18048223 621818870 347653201 214180842 822470173 173798103 568512417 849545829 613207459 58505400 120631108 161356237 74303004 937884563 67942674 871603996 255428758 918697503 846020075 581678771 464882218 921302769 967706705 63071571 607106332 905969843 96930927 892928274 201414369 596743730 465815039 948346758 283154766 374276068 303649407 981898203 294382353 731787065 197985086 385475472 720855841 510980335 753738146 475119442 933246455 687861262 522268388 339031783 755687234 597097678 815306331 353654373 436859470 103595656 425973286 259482930 569267977 829255021 11575485 926494759 811855167 508704051 831075260 376884920 575789318 708297652 228130753 325029438 853792545 933866592 332657992 265979947 653078390 729006885 95238258 251296173 117854855 302900731 806519979 527859441 464567690 407285129 849637976 744683825 987916186 569343589 597921224 588301918 164437685 920373397 747706500 584423016 276758745 377128073 22431888 836728780 44038454 114615332 576872679 526914253 843096836 342586682 810139264 871690313 2487585 342698949 336822635 217784348 709853383 440066734 590856983 660642529 38976613 941635781 100082142 383080277 826353639 312277421 41946994 29721251 83101790 30557298 940714178 804696013 153518734 743692576 578667874 255898446 350614696 510365720 956512529 399328407 683576958 50151183 315473905 535005188 358454914 196581975 663966571 448732666 600336458 847709463 702546428 253156291 956936845 14601607 466280871 781572452 5595427 360744064 565245378 67686533 61715244 581014608 53402942 825542108 586150275 490223818 633390123 458055672 992236711 21204842 282195305 918928369 960204174 751128068 38969514 826753361 749387298 576099294 263152253 393082629 765197888 937584471 822611172 193149825 618350254 988923758 261373136 849615348 16032680 960367640 764957742 873678390 125000083 744091009 987665010 323124706 82931846 264115397 565357504 510308884 141186068 548495603 203734179 258223612 138681668 188504437 625791999 923733551 71820507 722358913 412349883 634444632 371957333 953425003 594087005 542031008 226035666 364383591 206905201 948152759 694483325 880232968 725728546 367713617 48834134 85943679 47105903 357087260 284003733 191808152 957354025 295612382 447197386 136986257 120951605 711186681 104631723 593110769 462969626 841155574 857097957 822229385 848712831 244861816 585031310 774702338 566787651 287169863 426084925 471371654 912722265 531103079 423162317 357319107 712464057 681765565 116506636 226861697 535576748 908273581 447480333 636170319 454151361 443897001 196959987 638761415 317031863 179911006 269813371 67081252 797230355 806724276 794352910 296033109 600781975 330392795 940311558 642909073 987017892 516883148 740596211 379149320 400357062 252131046 64859884 377809407 923406818 401852263 194123063 917208376 94948273 348416706 699718511 855048156 642508908 815524666 211243926 571331878 835627726 595518073 685164701 333757745 329710200 951430565 333558319 171232673 486317134 39927424 355264274 894265824 955018796 803923473 127993941 677956003 5211022 736207106 442884956 934586172 792184721 228138387 874603778 127879718 814042347 670177574 122564480 326337151 208209204 257357429 183453453 158871427 804627540 742311529 929169416 424677276 980004171 113711350 66749297 940258049 434685712 613809991 434687819 632311864 826965122 162368649 12656360 401705610 428831509 825816060 348503700 632037201 934349973 986590438 700412000 566382227 969624578 697520431 764373892 739557866 997258462 541434128 803869953 797192367 360443315 28081940 405101176 60874106 936051234 658237292 303205624 503089194 758665547 923836930 918678970 559005550 554606443 782105817 851764353 393899980 816105761 529103536 41167443 760527325 546413695 178832262 909687714 309354833 306307104 259389361 304440031 952758652 785130158 621266121 473366559 259584509 604349414 590670712 622670447 740047535 35489245 196151319 933207164 701379423 465059728 438079937 186189074 977342333 334826535 847223718 319800826 485413169 599855196 966314168 520170326 18047605 302077376 887062722 227743035 465106483 845107005 396646572 35431735 472301915 849137712 679216163 527433048 854170855 445582106 179612331 948684402 909534022 990928558 106989859 522432952 439725019 47202766 760827175 478041884 236261244 405000896 89147708 273545645 37660631 980817748 294302487 691662387 842072810 909911513 348574732 152503273 612769977 458774957 49230610 27213214 777493848 483707065 183558026 105533665 781512929 204378372 438160116 798662922 414705149 617425737 560526806 707363777 51236125 291530207 167268909 703749717 226805220 575112470 233046178 741668370 844547972 188474716 58706936 795384305 942192852 346146391 613807779 752324807 861785242 717078172 555279604 595298905 572011082 871876647 531381995 151797662 972597171 568140091 65570687 593738669 679947283 537073747 643905151 30902849 298391834 682019988 836553648 795178182 851448779 109218215 580568868 589193278 732466678 288475819 593572770 842612729 529540857 611055593 4548300 999065817 736681317 429126362 361230389 207587726 647213237 104467729 544862198 297853764 811372271 73424146 569640429 883816328 898898909 308721416 663043933 664516902 916602661 845094325 495928598 823041651 342651020 193334252 14647003 221457666 527724084 800413474 82469487 382603289 338390062 26720448 305692128 255570833 219411127 958069351 377483855 100532071 405180690 554486461 436362412 306210917 177940317 558350296 783151306 115377576 306186422 903389380 329450680 275329814 814149300 371428322 888946040 997750401 368460271 221946982 196003737 925709794 323242714 187692565 387141695 330404301 914934691 845630235 283202778 970905537 452566994 507443723 903829318 766247367 952759366 595527603 377353069 507990145 491991893 671728642 980587423 113760002 477243096 55391920 659839970 659618119 803716653 449499255 376040961 783749353 951709084 479048010 25648026 190446172 376202363 52009666 520282051 399496612 753522574 780604289 333072224 427393590 208150500 750590006 587702090 422183040 12341440 745041862 80155276 541713357 506945621 269617762 364854003 87147649 538107504 843639618 948403947 859930024 340146707 520035086 811227076 562698359 164455780 743685672 125313238 711528310 144756345 987753194 492245148 307989827 72489964 59696887 617798440 166331599 421240979 371659010 959319825 26751011 475500251 25588847 653983758 332818385 540881986 391185061 288545676 676342442 787100535 273595477 496827485 478806082 735431236 226861991 235422726 517817640 913748462 962244301 609915688 719617598 884205741 900648438 980174754 972680388 423512102 97379804 905197347 695122483 810429143 203284844 3782839 24508694 43208179 158813193 819332679 562534719 307025529 408356044 872577544 879084593 466161904 659944013 58852073 809372002 995053955 255294905 602783397 257353167 431086921 955173870 588582712 397865890 242389566 182434843 557000975 361236663 238622859 751780517 386583934 126151992 738363157 602656244 855683219 967512980 674846269 652808269 960092123 858966458 90275571 291183797 566063532 191001564 127322693 820194766 718926809 561916572 214012368 795977982 74830217 738101709 319490487 285149812 753730194 778515126 583261754 414558693 363360574 969594135 124848270 813176220 399352866 115799686 493171970 215253262 781908425 396051390 5156904 356851980 664895881 802079828 431802839 109405640 416882459 294858966 699162838 812235830 716386836 533235734 141927657 415113857 876963379 90983213 468218980 780926264 553677352 487997892 630370910 652559918 210585921 608080774 812237393 61539128 240317855 361619134 334018617 400909702 386032345 221808378 672927465 930398576 177587136 402801902 83417180 444241356 433397931 632987619 269631238 739281100 167157514 181330629 306544036 833153349 832212781 320599990 100246639 230714986 382365699 710870241 14221380 737163178 302206673 383283392 126905760 953131890 222863996 605561212 283620949 752897692 181969180 251585703 598300610 688369872 533257134 912098845 87817386 968667558 124311790 828911992 877149965 6467008 270003765 794108734 399314246 427049563 385807334 683239457 915571919 626384064 527086291 51838547 444034098 249495307 89085573 953637801 491507376 309526776 902898163 631603780 442831335 666292669 925276532 819322149 828223961 752751078 398651962 35714515 432857837 280857469 946697168 433948922 686747558 399400598 764631697 836911942 994770506 856174679 307412695 104898302 779928128 377277453 41564942 121250451 489786257 122570913 843227970 744118242 809896580 162519538 661562357 410970055 894231510 311501935 799222772 73252620 465919856 6288952 569553597 537618760 928494524 714800856 409485536 901140871 900647135 288112663 15178051 791852290 766828024 726402682 111345516 405120710 835819692 588644484 284090742 988294820 757132684 267491494 303188763 587088473 665849200 881309768 964296877 922046146 397604752 456525823 813375839 189796226 301751845 341682620 754424934 843555232 371630461 122948431 330962749 336671235 41288049 978170777 213017111 81080147 290530478 554078976 448465479 899517725 477469129 484606032 979821288 228388212 977364112 131339289 828007013 605318622 478267742 842590026 426668399 705411769 358213052 627279896 521653732 800146518 66042349 49091798 469890508 969641028 655257544 375971685 834042360 949735178 646399782 799777138 366031646 89137905 346469163 744397479 488934800 921072219 933081990 9054906 996217803 363420031 482810040 591635353 134684444 565264814 405413493 709864744 529483687 493019746 199760044 257603413 735825040 766411970 159450377 93421405 520251566 611591792 551906141 750794221 633495220 770630150 292248853 898147594 367074022 280250894 412864735 860960084 957525824 214869902 89427719 278747524 978900200 466765516 56448647 22583272 113782268 791016916 990391641 375965161 510472259 768410390 546292135 926892978 433443627 186610015 254041155 596970631 432807686 460101134 15571851 851430222 910566036 570811432 822689594 701987959 323099626 181323823 466523116 862441708 313389552 317270694 315780773 84260724 231066890 245310389 46846116 747992349 645933650 801605064 822674909 749358947 106511249 545441473 456251885 846460762 936816288 391660468 76475083 149926063 681475037 91026863 454592590 132190327 124140601 130205599 319473194 513627689 346674865 262729632 560119341 328734152 346203590 575712869 560733324 658068496 733885069 272406965 715717386 83898700 252078408 819881077 588683872 888716067 904599859 558093242 321092214 586362214 728194126 516099101 260445454 66814375 849269642 986510423 824277479 353476470 30594950 209583253 764037063 749751555 594540657 558364890 600688654 154468909 114173730 362181520 194055745 252309205 24792219 601492105 925314295 932395996 240966654 78039333 849918760 880502016 28268849 250821647 24188407 342307164 486770567 971240037 369911336 172900960 354781280 153641609 888789440 823897012 942455103 933722637 87961069 885443004 778734674 959110167 307874653 788453692 99712916 925418419 347910103 363155476 669661800 107961702 188072520 689665534 93252995 835671825 128100318 649344523 874918908 726390530 314510392 703849221 651768053 162261701 68804389 391101669 377773801 324615615 223131204 580190693 388875490 455679339 311182270 225183961 344286391 249005525 202485634 155342568 188654230 155525087 626168402 112303250 152968701 815181398 313172118 925708022 423790991 626818687 401037863 593569767 319804987 977934045 973508652 239948912 403197381 925861580 691361458 703995500 730174956 968074482 334746300 233205617 163139342 438400201 306804696 758099775 587908307 175134004 999703323 586957226 876487553 109170288 576053949 780375887 498537072 874840059 87634612 306498976 647494443 479053026 472880496 364337041 241325362 889631319 350654520 849132075 784494907 86917351 857302697 918030098 637497663 807521722 305546175 629883811 98036395 52382868 143265298 553652466 580082274 233778576 182549515 674088059 636543934 179915373 703476663 809991640 970739186 225389080 127504331 194967183 990163401 849931270 360485928 47726970 876789788 479694937 599419357 204106339 317409088 120819184 822799077 711626857 555861552 55845992 302147443 636978771 92106785 259641391 455003743 497590473 519280678 17749823 559463160 844101340 90880168 11645317 53011857 989575605 171978586 919225816 236578897 903329233 300327155 979558100 757841718 338102569 260819790 29779631 730250078 709244057 993025549 507948332 53161776 218139068 28014104 666363674 115856088 805805580 952214582 567705923 44281057 803870160 877643992 826707730 820850384 53529373 412372831 187701873 491915581 169927568 578882313 543853011 247702085 908531241 597100729 947354245 184165552 78307913 585525011 163240554 349157011 809524349 397512476 311238957 954955732 528476415 116190406 821307566 4728244 374332679 528111892 486965437 924092763 295958526 873673434 5179120 141589955 428258201 523935047 389322127 244865325 998087232 673149151 475727479 178356477 932034026 790566137 79097911 666684808 969424957 623694199 636275438 89898228 583020748 686247421 602972240 62196228 843450934 181104368 70226846 150455853 340069899 57428371 849921344 251923617 609087864 433636275 496857282 806847610 162831060 662677708 111267493 876795594 537175245 899127757 424480070 915414386 753674228 477186360 645555438 117121512 58857039 698196326 775007241 654296456 891669093 317078814 158655422 612880895 999709542 290905984 595925913 323306259 599577397 844144147 886918076 465751770 251114622 944908927 345489162 50785027 81009382 258480577 912916450 6392562 771177264 895188962 17692224 236662832 715381394 581448316 503231933 148210443 726548753 196630824 992387403 200073362 26390399 18468284 749246056 919555126 595099331 776580387 237463129 642892846 70119970 847335725 128489197 911304767 502986728 873112957 98497043 540539477 308134914 331656262 855397788 289522124 279838699 947467581 99462620 319708331 691970824 81687746 345727314 51576317 580573427 192929639 518162321 99515380 546900076 31318301 655681541 905292694 291988406 556281778 476446421 918509980 318482629 823073199 33637698 104155117 717844273 72786933 153891712 470470117 542391196 75506892 620429386 289320147 780925093 287082609 2993209 635696359 401287824 678145697 521717164 680389406 71352378 392785683 830322388 69796783 875755468 631220653 19482539 877719993 213780397 164712071 254305786 662971845 654043246 653782681 657692599 569274898 750729831 611763380 710209452 82301352 415173805 254722811 477663699 769569469 338202297 400117102 965634618 509318161 62702089 591841094 739172480 553047375 696995752 654851107 582928137 486974470 920309425 249993489 558472216 115546589 829810212 528895854 395349618 601256607 272907929 220788304 871968912 525228536 97757274 617632425 2087052 819892644 53505751 1147586 922311817 790653135 152076988 23630442 513010758 474890660 803498011 554730749 665748891 501230721 164243571 75718313 806028122 364458427 95638734 234698231 739601690 685669359 244006870 701862835 415276352 726453445 882558060 960234479 516758759 657484806 234612048 897029699 989323673 754722174 152632385 565567192 726558029 917475574 311805830 497119449 656549008 857365167 918795184 383218006 208081669 645677115 874596107 755569534 929456835 234294934 928052812 37700024 831192980 563604271 637234979 168526951 152485590 1198563 27849488 391447256 982181325 125520326 56339828 412738023 473470035 270221373 157888878 926576207 754796778 882942978 840457380 289596235 892441147 823562539 286736558 754237965 713034320 386627197 984959676 855385464 750483240 498192833 88659428 821607264 102024336 808217638 662553295 815424512 525752436 253125822 324479903 774966226 497106243 378309716 825894673 854001394 405985301 783148036 640316528 633916467 579194074 201808834 923358488 713302937 919862488 422195482 843054312 946985960 702704261 653457236 204810935 947939811 187822969 368978477 339899605 710351294 888428654 251050304 119491748 198154890 87027214 828065930 609527127 159100265 527662729 288726733 850672501 69959131 878352769 402801625 396412543 816810570 567346630 840654748 994021404 95626467 458833388 983799736 221078748 362494470 102248734 449882022 34973036 336353478 297386176 339282548 194958026 926435580 111147030 792059040 918903357 499612063 663876759 645248880 75896085 330362705 750745739 644215882 1544137 622912788 829196061 275519815 11324207 146514395 513869415 925319236 672132555 722161410 726687089 38691426 868592310 362443766 600259864 412586942 118353911 885010622 495023691 724648794 762457434 360268323 475519316 108569029 315900302 130599558 934460351 343654388 877678066 340446001 774272993 177842425 995861434 835916689 644585853 830676213 808630984 879417104 946903216 942645706 597111317 364785784 162196775 954187054 954591214 417134954 331030598 543718068 276495738 774598861 933337137 370297327 744890496 787273138 724117257 664045852 226710400 367658677 417221581 274594506 965883401 467852691 750621466 997427773 920441581 903308289 108792724 151465467 854391732 400870749 364814966 987278675 18479396 761834321 220191725 262151451 628783893 331847112 666427818 509812074 710739246 159445864 683274147 856426794 219628338 185802034 64482166 512815167 32695361 199943164 236851305 943761460 782227305 464816254 98748311 800840945 773580090 878192889 782724424 839332193 616579234 226161110 361861063 384277519 985627012 892127132 659441355 61782713 445418840 476877755 510752361 107324323 637643873 826258848 151701569 94249443 96147074 429190928 204426803 794850319 64475641 179626500 447467178 557406242 539422949 162070978 762025208 403763289 889111088 710628276 582705564 65305024 507657666 229545903 902205897 950452555 332740328 993894651 614496805 168276102 866728786 464328831 596146623 127835241 437235486 97426331 987889871 519869862 295331660 518915254 736565340 593698220 912000659 915513185 262135283 531354141 649585697 170068323 899360457 800213992 675669149 448922157 564850857 432972449 939401041 578521653 365064276 156961764 703489928 315518789 984703513 7513799 438445622 584043460 13055314 878804963 882722131 402238441 370793874 712039087 478033798 853824135 822769421 491364306 81003459 486380326 647961149 972746129 976589496 559775064 709440205 660792272 527728852 597958392 506511704 461350481 256995044 104489853 450901927 135115664 220610272 940251915 256950653 833780740 283740665 291698001 730809850 531731527 305261647 107813497 727326020 152231758 847501396 390346341 819016566 32293377 446460476 535892674 246530359 819877957 281034678 667071294 998489494 978697016 270637892 705502656 488713431 864171675 939308963 780744556 167623608 864689790 394070542 40878724 71786973 118005892 974305875 976292544 176985981 155265466 866736761 241360554 676496142 104470893 194623065 167467272 300334271 343094914 750293103 986428240 158220643 695884416 470448216 451767848 156346744 981698255 540291211 716030268 500477225 635386317 321264280 541366452 893057529 121582280 468734189 44976117 331772563 340477348 598697417 834182663 247564353 274455163 747504302 756352913 46477536 102727972 464436470 1048270 173917896 684565984 712404409 372066958 99060300 176023065 239547914 870936415 834262961 3535195 506602043 45214220 424487332 705943611 217721120 117223412 669189160 556579376 167473175 571834721 20366125 360119145 577609550 974858701 990595922 638329334 869229682 470215782 654021443 229397561 562467647 751838093 213426527 36790123 140569275 448442586 584147603 589483519 70334602 954123574 975136366 990357329 526116988 745185308 261809363 31775852 830500073 849276145 233344183 627926621 214670843 456243650 805993456 968593786 793404446 807760173 89244745 825975009 643267691 904729974 213898949 827396352 330415141 692249244 338710033 914363434 641464465 570973756 985172922 957427158 702369177 569142766 850688254 976778570 165268829 17983477 740946221 89214246 252499366 121984100 450328238 922165056 496043729 880602182 339052292 234097750 770318137 124489785 143904838 459209820 42716779 534415356 16063402 243767843 55038641 645135888 879872671 220575156 15039341 650523755 417913559 771263310 919360872 43491849 709337600 124378947 965339875 751442620 659985202 84304740 370222726 643134211 389877655 323978932 735372626 626115951 201444747 919014241 21262139 782441299 375444612 688111698 830655147 402743790 874766156 801912972 231361371 923876042 205718167 711056288 684680456 502686891 311136723 269110612 867108870 641947808 379470440 192639447 416130300 293148223 750363019 526087797 466705386 250264167 793195778 903228757 688126314 412437217 151929021 253722777 436940580 152010489 342652494 679669663 220534478 683569159 39632460 478831886 492561946 772975350 506867193 710013571 816075050 347841125 211575277 283876429 486174161 281911850 466202636 401358344 461745480 163369718 469424858 560106141 963000838 125839138 94296617 67602257 311216104 984605939 52331314 418392125 847200033 971056785 612087444 62512308 356413871 538976203 938096330 887584251 13235204 848313466 706801493 382856513 221643699 945332469 687515218 370170936 320158460 146714212 875552901 655784924 94757127 148298605 296518764 87634398 829645048 328375490 156355336 560423688 592616100 671947170 228470751 863510362 66121832 608022568 327039591 560698051 29890048 480535727 170417754 420551429 571305608 118715520 694406641 628982739 88335620 83123138 763998647 705426965 425764762 278053630 983838802 929509988 374634397 64843378 630379265 762146231 898742415 386479518 476516963 35170912 12089241 569969175 691671045 731893589 610475430 207168193 987688422 895658933 387007177 207689151 810328525 956093568 429028927 62844068 104973662 176506590 789796128 131913801 919271491 10840870 482815133 664577577 864821525 286277762 111184763 466381560 722745218 131587435 251644804 689886705 578857656 76488007 153547322 958992626 918934177 247048346 748838175 903660058 587323194 257185514 215317283 265263503 801501263 894653704 436290239 131341643 484083763 640996141 183570868 298157164 980221911 956469428 714456032 791023763 110482966 328397376 101983821 156213081 205846034 566476315 339691756 549291307 907936458 73558649 241262775 556265220 128379260 829843458 893646857 516851780 55408296 863110324 189266309 380014852 178786665 25291782 738504252 357402295 128072857 392226332 808279050 877800317 278902335 835947716 939691831 613660594 837330044 253851563 391642544 196687681 337110713 768583162 655837857 139103752 99826114 811935191 166209534 82140533 382410434 45269762 136255615 108201789 290698481 690266432 450615154 65388218 185140592 904036298 800950650 53249384 134570509 182575269 890310993 798263614 146910177 638635419 112909711 442351706 176153812 567083929 423857026 553650762 340728385 369471143 748569264 962573833 236018471 840808783 620255280 95903141 213561275 391215871 239749527 610554254 596101086 662830560 460199480 899660879 306328430 798357029 215081832 651819203 131846667 850642016 129834702 446486877 550084231 821661475 581679194 201197964 629594765 235057252 78014930 215092250 157110789 419761372 462625234 893615237 708545666 830736222 952074874 360588380 458867031 398906320 884180305 780347899 785063510 828040569 587015654 652003976 284463320 114234725 897029792 684223237 383711575 546799464 174287540 437553170 869510004 422842311 971470197 438382736 942454893 984763553 521406957 99871914 744203546 245447830 52979569 216951541 903727775 749609754 782521293 597782535 734291963 651872903 726838747 539244698 163341482 962089699 289861836 437196948 93792248 413718523 249394138 914108293 962147694 867452303 396271233 828609743 967084858 297300468 469834780 808589175 966712889 531922522 570899708 270163202 623035482 938761104 169062575 552649916 168630413 982524861 673303436 580917190 330021886 560045189 664376125 226331727 737563914 133312526 796558816 116180216 755889373 57272684 605493402 573685609 949225638 583910552 498660456 866349605 12764703 911866605 299832409 237484934 954829893 535120322 230365942 791796520 630385603 26286731 709690570 692610333 771792218 728214850 926256944 198709995 766650632 292152095 736419287 730651947 282855576 421719279 13833828 232214860 76383342 199425772 505383929 595320337 980424686 118366075 339782446 754349330 377793617 718423698 581978677 53924194 260004841 56917505 270980136 589143382 457730470 434896884 323312502 818511626 588646921 238962133 651749111 310701760 212302018 539417152 602192507 159370470 398843301 298348334 36451595 596563431 455828860 740259764 259941768 648051130 435530816 784064238 254914502 46893378 384073267 153497222 482019037 823743022 214609727 567062765 3924834 219123893 92858399 264580680 325672658 732622769 329268621 370271965 166974167 371270155 880679732 505347368 592003969 835748630 357519655 335081822 710064321 646815736 55172432 890099103 405928203 387643629 225531306 190601479 216833293 42183745 955277773 125765726 882803049 954104297 583017581 814964304 14019913 44967113 330926375 907634962 751495006 864450799 377253197 967760696 69520080 702781535 771232775 779673583 252820488 408560465 4695694 699985106 899331904 765556173 181170771 839331026 242437604 146996562 199807081 388737375 674438014 720759266 524075643 978281487 15301526 420263321 320218204 877388647 451325991 593535906 220436709 65265142 630539157 146598384 707361730 779439198 151783722 356798690 587688433 706377229 527762944 860663844 710049067 891672629 128842072 760583493 119122792 736536676 764277444 922284447 430942949 877470451 144890086 154028710 927569270 17210418 362662627 438078260 341289191 57333079 59206141 477754209 63994284 431108024 167051190 815451160 945363966 706109973 856538794 389244907 581455513 203878118 118411739 339323685 562825946 167905738 704636683 291688065 907046490 194053024 865404028 148946831 853818312 877319172 550187832 431662517 893767321 391644516 82434527 451654946 348226031 942514962 14885560 560933225 810740617 704481560 471294364 638200406 168771416 516513473 824246680 531192222 794294058 770104659 461895031 664034982 19444838 335894567 129639987 166252501 729606395 437946047 507699365 525354068 94772571 590440506 429668005 178550236 745041035 767439941 628023722 542000525 560133895 783611343 83772803 316924204 255393124 913242463 363355914 873631972 386446810 831301736 878846156 918481320 797731568 549215549 177455945 791471202 638609863 567874176 583054108 820220370 5798987 331243046 382103244 142923491 717420093 810813220 641168078 779872429 669017258 954646839 982948176 95057221 268872988 579944968 773970401 162849803 522920627 362922568 737164240 218994058 35820824 231573052 924607365 137923690 554448674 975377506 678810753 666548197 448759507 759732035 157324447 369407697 862485916 180534532 491956245 489112040 192081225 926826097 530187630 444717388 588743562 843559671 112031516 284618757 261323179 720589721 105428183 975125790 646561268 948974566 206783794 796976185 135286367 428523256 58591021 663298490 961995861 778324446 423481887 927770420 900486089 198433113 988645573 645331463 478212626 209070605 239485328 618165280 310599895 731565166 801502911 412956114 309995920 440666264 513082501 683009348 782158239 686748138 947197764 407013740 244841323 37053874 552556013 405483947 564176538 294272840 963877992 540705676 363991904 46510797 473984294 471304077 880645149 471046558 655452597 668372970 747278330 242102447 119198929 381912584 68571427 943585457 476810470 442015594 479012548 580894551 27144409 634066224 169281826 946588325 292297096 871098789 26579438 262175981 739762032 675437515 591049722 164161394 888055541 238257454 768686261 668602151 80146916 225196743 381754400 837167747 985913862 275824316 294783359 285766246 867856862 52486023 916627342 238875910 227467019 977229327 48835641 337874221 372081339 995828380 828842869 8116777 664562766 389541835 612725972 669103223 841062007 550149496 790945784 532389823 467869694 390550758 356698466 812270053 317350365 22267009 382461145 232763951 591699172 381521338 680428304 857545967 363447492 761898239 427357970 196932766 200694382 379733293 986681202 490006274 734520997 838557499 961297592 780008591 625234698 26169266 895372947 646708501 889946078 899726497 836501845 982077792 35103819 282718472 773436400 571230592 694235294 143634569 239670633 929338233 217630342 883580297 922372360 535776980 540649800 568089277 127621318 645511274 525719928 102273148 539792492 390421420 798302816 966766157 465339241 974233833 753558877 153590557 940258996 392737310 650300964 399194409 430497846 830519462 727274638 723938870 953303907 672053993 169177896 683535317 618993378 11466619 48745103 570180494 296687161 214662449 693104890 464042315 142410365 319537544 210209607 831902861 440945772 741118682 751059172 368590426 469419547 367771773 962239944 420489488 737673880 580305449 808533911 777373982 371061184 445658687 449505341 142788039 601333237 962123187 858370763 612436045 17575746 540240881 587018844 540124214 386535461 194427306 107669465 387529845 475110708 112678206 496693127 556609010 918976556 296661625 470534932 661741594 706488500 255290184 102740166 295539071 238920296 924223430 441282759 596938656 719248389 47673509 207328612 139936392 444641204 28056831 506723868 395933315 36214095 326124790 915752476 426448897 105264427 257855717 165782935 444743911 531637847 288239860 70367381 870992664 303969676 228482960 215502537 893936641 703504195 524222318 550953500 843279343 874928497 694945405 364672424 839729721 821016820 525297199 867726973 165667856 293163052 775695738 752906718 976448269 493391057 36501769 294015495 66195637 474089528 588238226 152370048 205024301 943142562 121514520 659439105 716562194 781839780 144702793 866796951 340046946 442619912 150184024 388761447 355127905 484755797 820421945 632071347 797472754 491568203 373476550 381447156 969254548 333302641 156341102 396743470 495469426 929595148 489320800 784372839 166472474 278482318 551474451 794232784 913466449 221758056 92416302 227736546 245839434 577322695 293063735 37439899 559420753 504651422 807906786 138846752 447723387 436273315 513201566 750576086 280622461 943926950 345489799 457453928 901704869 8250924 44735423 801636528 813448822 870073682 556908696 131617400 495921861 376224761 878040023 782816353 775928626 978545559 557376263 394254197 343836871 945152659 639476985 694795495 322334321 829687526 585815347 453988846 787947570 218111822 971937181 663268835 326641978 488106937 81112689 913601362 580105111 695087351 438950357 539079168 394530292 845782393 32847601 323075883 981335677 48911287 984196152 438765629 918697770 443843532 51802204 984063745 490434425 569944174 22296402 144168362 327360023 446385947 255930689 730153026 61259705 455414190 644278398 96286549 620313002 421576166 558289774 59990751 471687331 83064857 897163299 109172985 829553653 916196826 719440433 104712268 347812668 423912012 656116200 408651028 105250127 66102789 747392420 946833997 205686639 155506579 139873924 223341214 935210404 429192683 82572613 244565915 478716886 939537762 410110927 55615553 110226092 715388400 874833458 577708023 388194386 619302050 564549082 905850475 194179628 552739052 305532747 646078051 933925579 841046243 680889566 922791268 327687351 642264374 870709854 428207770 199371051 698057649 790897318 627176516 476071767 81498441 737911325 469386655 467598371 106473685 364665685 145931564 565933676 72360219 917150558 322626936 750650853 270770236 420396959 835517581 463327242 430487874 68937990 996377942 230455330 162133266 32347710 491493141 847367798 99337775 541718080 911131396 413596653 595203240 536233613 766631605 726696319 137489427 289769306 545076665 486298128 177860224 105122886 248496760 813105407 141975125 22502694 556173108 353762357 397765874 216326219 726671296 558723323 642826631 453034297 284051892 447381706 496131586 494172751 958552532 270971922 329699282 924015592 762675036 162984053 908557783 671631103 391335484 593350698 618057794 739666349 299954646 149227901 310409984 853314203 107906314 767719076 919336599 777299539 40029800 17942561 494888571 590371471 215403961 599274915 14909705 141230909 107693504 928155924 336254458 65375438 313725134 243876286 829780509 507202894 233618633 870958019 379885613 209074608 232417775 916445867 443879782 246516763 914301593 789223099 838103901 267324158 938194033 13236025 241088517 972917705 645822918 812308667 261611027 166058675 690204539 246889572 732213981 846342740 572570393 837403480 37412740 109879081 165507998 767276712 185102632 417830769 643313114 776370269 676279934 818695861 542083167 44259806 695634325 876091539 599276884 171579558 781060360 580818172 414294332 508209429 803457700 733552574 822246965 251224683 417344765 47689273 44474814 917480983 866192405 473606864 142757309 225554886 258128982 304845591 961352956 142840709 209463723 530726667 469886521 180680103 899292313 298751262 471172212 923789009 902670661 736060421 661029459 901026525 615475097 870275873 479392951 440392088 558596540 36471459 420775684 764062200 250164928 645774672 5791650 23277609 226831889 993598100 843395776 815929745 184108631 585699317 581472550 68823818 588757999 43717651 660148276 86907495 604188458 919732949 481396250 696571704 510212337 979833403 799842204 528546425 892659254 916364940 596405729 929045616 620781067 913408645 890030027 504722329 457344156 875284844 810669204 879659460 414576283 496688118 576060096 552417933 200959512 41502682 916966201 388412890 165885761 635073364 487814842 665904277 380580585 930645069 558772956 865505724 47715235 993058487 89487527 247954432 334340653 62952188 572469823 888946339 169263660 854708615 459334597 714487846 602596842 652872454 730597726 559836869 883511196 92165510 44219575 14705242 600768084 489612695 85269916 629463427 766609349 854604507 579721714 367903913 46158592 544333790 774750239 802420768 217855046 799884395 670497186 519449249 167234814 592368309 582208738 596215873 572784516 194118722 665439294 220084011 865906285 898412180 721900848 838729769 928224033 437796810 466361162 28182254 688503365 535533130 9154959 815230461 610808085 918061549 457061564 627523508 515304555 713443357 365439579 646928991 531707591 508829999 442532841 767351288 759807531 8375952 13886571 311208653 41391392 182954906 344100476 181353811 671291263 897023865 51517949 814044232 636224336 527182146 926882512 108807120 699577785 874143656 20447781 708292252 868091368 188495341 243248803 444013460 928118419 398352742 292725669 820885238 569979686 51066097 913674788 808683286 32328425 606078336 872914409 667256813 536615671 619992993 905417815 243328724 239778887 391268540 545262544 472293966 317526772 825644532 938999250 774191188 48599795 18634310 191711395 647430458 651583591 936615563 404366319 207356238 335033269 250779200 85906884 915499665 58780967 568134806 171720531 804637892 459502865 479374022 479189143 369668829 687403269 370451517 433651995 843105117 80619726 315237047 44183825 369719725 297387759 969170003 622258498 595256243 4934983 549628593 784275612 73552420 153599616 20453036 783969924 566700971 861978436 779772333 427634775 235754673 892981395 624842572 629688840 307627349 586143183 523958121 834490937 406639352 327031159 546891793 84758150 210818490 503532152 811227767 895880800 11292540 452161033 360885400 781088285 67445493 10192618 210518744 179009994 428554949 42181333 914569159 260575604 430906611 329685327 681372910 721500412 641985107 982365648 544833204 82081097 684582091 378206588 451937556 352809747 501229666 563579600 711145765 357156378 670402421 397320431 838031962 746371074 959368226 492216125 142825596 738900828 350408666 639797778 545842450 26980771 650822084 476104856 864668826 525621069 14175028 102863209 747546271 623068094 258450973 714128880 638101618 284122575 876492838 656040755 789833472 318919351 642299090 140626438 829234458 535712937 543863766 931459266 784025419 296498628 882560906 234986367 248727930 881522984 798290080 116038029 924265591 646053312 933263312 617148758 760443872 24815950 566238379 483216957 992615743 41563778 321852795 212254096 235718956 391854716 55848585 607166662 51983913 290026060 198864431 57540555 36643648 569389444 318730449 610570503 497931518 150263606 860523841 277691609 375973375 126491030 353444224 917191020 633366958 341536128 529368008 754035517 850521965 477651097 491600172 408779846 588795590 550240573 90529594 462377719 955336401 178024287 814293560 20699081 526730526 489021518 793723174 952809199 178076118 973673455 667832344 350203672 980807922 203171435 199639894 256768120 647117124 200958027 662234886 415815414 922787543 979304485 914995560 420264581 392449644 333743198 487758117 980593257 150527973 333793379 644994174 710716384 696205484 958836159 913348948 946721751 76848164 744349161 259143385 628766370 155558112 188476475 302730447 629155957 805989537 200520374 730700659 189060137 229345266 912220069 716413808 122736335 583206966 635007929 112744016 760002975 785723112 118422483 896170337 465511359 831914999 289026354 465596503 377671358 416580892 810323400 825990042 584264964 284157687 324924681 964504203 153798259 538848254 411473480 926247167 5294496 825551254 653489545 403096145 534545640 79308049 532753054 567166909 994678699 748520728 132046866 852480336 431918143 957867229 553777848 765367066 99381352 487042539 564127257 865756770 443043976 649412137 503016993 185827624 176398848 821909248 390322376 27706928 144778567 414152258 650455477 891381826 165620066 987751125 702254898 292379604 47702870 5403831 382506907 897203724 500623372 490666363 983408595 878573580 427507331 276065658 592692202 871559209 547633373 606175587 388070823 847512830 248901798 570570960 446254527 575695849 11223559 495831764 72271321 362660740 201134815 509824911 777288390 333156894 702468027 394161325 569819868 567114738 73616085 626556335 183395413 493420944 213421552 367801042 102390765 398924325 132416026 275367571 362695397 571976504 208762454 317331944 346254180 856554681 496981584 915373793 946641528 781792919 257838009 813464986 770495367 191014258 265879340 124211892 290925366 532223882 287027961 387302220 316242701 752227081 369731750 834216704 601213137 786176472 98153386 562325596 527543574 946292547 302950538 799552645 190110159 710481452 445387170 702355521 958702833 340817396 857537087 623042337 799771517 21581478 489966215 564479090 229314039 965342251 217595363 928256688 315679222 46280950 475471469 969776722 244971021 760476203 88083707 603465521 430809639 887155429 704685188 231703166 761509548 94249748 164176729 866059675 662701146 837083243 42602904 551946931 120669714 696220955 997274674 609889412 626228369 632072798 879312154 902184254 971044867 162888211 848407158 164378005 267751765 363883116 719918567 566784750 55026153 656603175 655512909 135566868 254955118 784859007 6502413 332289919 234594254 846744015 605552986 997959789 628849592 582499063 469259236 978443395 849123833 644695107 465562107 47301501 264123945 687175681 888410467 33950618 773854257 355673403 138972293 732145018 933855001 53464192 360904880 200245209 423122290 909524463 447872167 988383055 328033672 940109299 38581576 363459752 422291623 866466421 904311875 358030331 51844773 328419502 26508015 24614429 774941131 835386934 239822533 866084278 76745486 671994794 463246897 318075623 609380928 712434493 426369822 355465587 767861540 757799036 696963635 887828979 284487647 1818398 715282187 751142999 341223054 240520328 354428672 601714620 34107351 542701622 89601961 335548211 57626869 426670043 431124355 793241599 346872939 752886202 528001572 877163017 419812421 421820284 665970451 549429191 253725658 940685569 397618640 251841536 315264513 305393896 717577398 67469526 936201524 500212901 26297815 106475630 989032588 625761403 180518947 625442538 955341040 511050897 74988856 751455280 843267928 426036339 311357336 860432038 838651192 794242901 838254352 572011001 462719907 329856675 994059556 611254431 138067479 337910141 811285272 141599722 338047561 557884752 427976686 647958468 588591560 160559279 805766039 802289392 130975201 792035742 817307612 54306625 699268496 588283328 113094490 72535893 568650094 528506576 442939445 454079760 115109488 616662370 512501336 245614607 658712241 690833747 759031061 315958526 736337746 637184460 767447966 876903324 67006933 884804190 839684632 517194821 373039040 291582583 843892450 403268752 954661515 106926145 964861959 505902748 261009887 207320411 410979041 112213979 178167847 812933674 784184482 448852660 336194592 860054640 528245754 942557420 610185773 585136473 231329280 78709041 190616007 705786826 365349483 795195944 300324543 984610034 227975915 309473487 803812905 650194351 194313736 497428724 495858472 781050208 723912033 171109828 99007091 142117879 332112942 908015359 308359482 611664901 371632553 255630068 41044451 851188852 827574146 840725255 910019489 830309450 505761480 388677781 377620170 972742875 931763956 549315983 883212412 625860170 274343167 20883393 107023014 31543209 364485323 613514033 670836308 424750675 740498064 120666270 190071238 545235305 962938115 372018165 97241622 576066914 621050839 488024358 111987865 25541406 339005294 660084998 474711965 612430045 617106508 283972633 29413924 27129295 221025945 175950277 583500465 892075561 514028290 905921632 709972578 498374475 599539309 778362752 167498765 295393876 412136093 328781173 338728989 431260366 268245557 198724701 539802386 861831578 768294513 743643971 575532927 407241110 673079517 91252957 743953711 328568417 327119971 934696501 796750688 268463020 360260511 554468596 408333416 537564806 226584829 825495962 244946226 448813916 967528226 865870699 546565297 724718907 93607237 223079584 756706969 223383093 638165984 26372256 611354651 501718572 79299140 538903040 357338466 891981514 85009679 819417415 810980633 142171796 251968181 149827122 610821295 833142486 504199580 77173123 972891490 976446836 280334687 322768806 734282661 719910033 630321086 188680292 266365457 455203766 956309903 148100542 955493045 309984476 845593387 235380391 244681820 417531484 852374795 500127517 3883846 882627443 125262112 849759393 666044264 716431007 869297031 470862484 104650796 664779873 512380689 570157308 542441980 713642852 650367223 272443315 27166354 40595993 913435489 486011817 262540534 742111902 374436161 60774950 702180545 693594763 690655460 484402765 206512849 365951402 596415569 677885961 780876193 740653628 455527489 864763220 965787054 205157475 89467935 835275482 995225567 560088596 602263420 967773089 32327262 91782265 90910236 402450363 787406719 644647579 890294709 395196172 233044087 988348285 873964469 775244301 826818700 369199413 723898759 526711450 958901276 489544551 107901650 713896444 194277456 323040865 875999946 26498977 501959393 349640355 266528488 559415225 960602484 963006178 102139244 183492250 235028631 368304543 582555450 115534655 442931425 60817563 696108237 932201500 134007186 711173871 815376086 130366206 403077416 799411008 138142011 645455775 61730583 190649282 552476614 219834935 734020556 261464263 239555136 560188716 236060871 610724021 744908345 820248218 584094458 125473613 364350092 300040995 725754369 350898422 765878845 108257581 239761407 207536328 698761467 918531675 696232346 369678395 427683377 225333993 983628613 207510288 206150415 236095951 712219084 781314144 643112084 121908841 432756980 363038646 694864302 895879149 121791811 457276620 484897893 963343860 315360849 409894735 566904138 456217347 533580040 301431755 545255595 805712316 512397435 905242028 377922298 969802128 698015119 51446972 357097610 289213168 635649202 801508369 823026050 172994945 17045510 895922884 717308866 681859925 433521866 115316851 655752481 393609109 328489815 971623032 452952039 288960082 533102808 846208296 708987561 85773991 671550768 399394987 892662817 124397791 170313487 321643334 398893468 464108739 73326087 200685713 155611266 432974306 71992438 807390322 64839030 461969682 857809535 95059529 280960995 606989876 314140520 250551945 976315000 93611740 123970518 137507501 811050129 986174485 883717994 136201441 674694588 309937587 788040061 599404148 755460739 327895606 45581438 759554445 646229108 853019592 260438324 32924882 413919266 279125286 55218502 267741524 384248601 853428873 390873376 514258453 191213391 944510278 215425216 917715159 261149809 394228617 243165588 645429529 357446486 677443043 139762791 372722769 244498831 430298819 43410780 824512191 760274265 972027756 839404526 107854086 389750433 462406206 866643503 74226305 92434883 501169778 794259815 331472616 416758010 821220476 122428761 330446283 211784758 877536521 218685763 899618666 422094241 345760348 478887552 868372335 120065185 118900158 662052027 969120656 460177398 961630360 837754825 255721448 66007743 569375348 986644780 372208346 775126385 550295264 497112671 483279713 29482451 78883742 908975186 255552752 147215992 684282886 857497346 290758224 317060987 95768912 245172701 11349860 385640618 818220893 837722762 996523840 494626164 777456001 239282978 848459803 226727456 115149387 633867033 126123434 515675757 161159084 168660187 686534116 277092378 57790521 707874057 104216189 832830784 784078312 619307055 129188310 429899562 252856130 98222037 728686730 780224002 199421570 144724310 859215444 279345592 799658964 799151300 5569857 46650725 524208287 503346881 122481201 768153417 870368454 729109201 992851961 75331926 489578173 87812940 203522706 846264036 987639277 442725284 775386144 677926603 184612141 836740792 428916103 44085082 284277348 419018848 295348349 184778859 947140974 143343369 421135820 241677457 935430765 735158953 640168185 744427935 444134346 996082900 234593518 417891764 153010415 913362614 430714910 47769031 720607497 199850065 24173979 298052567 416027657 815072953 643303089 839717959 620655391 319951342 538231592 886940288 36385641 677014935 206455128 627892086 198701768 818291181 687449870 141335691 233901135 937230073 607344003 151541057 584746606 741066296 379152439 159811875 903581386 264722071 908232689 122765272 955221229 638559786 915049488 658288638 896692069 705686559 513256766 294687114 36664556 864736140 519184048 895819438 816923509 740868788 872227631 366141913 498264246 175671883 280672050 659414658 836282003 942214379 324726591 211755411 897566440 658981610 520656978 924075065 598147381 816754391 911451566 648579947 440319993 67484380 585672998 337039091 648959956 351362429 133325701 480152643 502810602 629483437 484562582 866389270 2359913 899833810 36458145 364866941 870830649 231541966 865564842 339022564 581291746 727291703 822685683 879141515 889020068 345791992 769959898 107032411 949756201 531391473 527783737 819264521 189190086 305638198 7936101 414849886 784038267 775941653 254522127 865081843 289115880 980802581 625908548 68518946 987319583 140674825 792394 670085293 883641842 21636208 727031222 361507659 308584540 718987893 690667153 658924423 643119839 982346252 188383274 86448262 633112531 623841191 521327109 760215036 656074298 626920857 901393893 521301233 846010183 994826559 699937473 996888277 643847371 576429631 831071821 561788092 386473619 876999246 834566557 338350000 676063829 588734619 819352822 971648697 824963565 476532349 950814258 357257934 133941307 546715416 231198880 77709619 482119181 964050506 9578939 588421401 615110385 657246611 577353844 712211675 156414311 271453946 182183956 968310957 785163651 898634218 366394850 262049986 193123539 926913316 187887647 574873859 556471230 55486263 300421316 366846887 184636912 402485573 759980766 650695211 699835527 223596160 347926188 454838346 908593979 257186123 375709912 112467285 555841046 770785896 379146468 415211525 142428375 143935321 740735562 741365506 328534260 822883327 131245171 587984338 950357180 159759769 457789003 691209780 279788463 959566739 66646495 93960242 11711281 581952039 100328793 674643180 569959758 647587640 879717759 913133392 812439272 832087183 402564238 710572356 378308531 371225424 724274004 254207525 832572576 527471133 486753357 325486980 55433779 667326741 500959449 651449819 387817526 953479770 161609429 621032761 575472563 348338605 641803411 760875061 244530969 472598432 544673445 905284390 965961976 210269206 188214906 470595780 856655904 657178884 763329315 887212164 518152875 183231813 284826201 920223054 721806064 828340695 548327654 766243328 341935600 862438601 468820677 69828256 247329558 951898983 19282925 773137070 678114947 918659350 184562805 589338464 290849848 916471121 596385179 463063545 866329657 339101223 997746229 391233794 843236271 387580008 211044478 228334966 941066404 394311736 430032761 376843376 194118628 190830557 417255959 389517119 783392726 194751589 825675406 706102877 35222126 888559713 514763474 428825650 301508849 892332993 634811091 782741883 702847948 220513901 997901938 144110955 894532625 555782197 755597820 377593577 845711543 758059042 534053989 864533060 272959072 921699119 952969290 844027592 721517105 812154597 126998108 637852291 844160498 353406029 911521878 964054285 785942024 905279059 843098334 20257663 597991764 192527288 639329163 260453217 968637677 589431302 519933187 801585026 158488068 777972390 814623550 967290984 912317130 526771662 237433927 885871794 790301058 22025185 678658993 949746679 997071535 361931455 849770215 931793152 785950212 905875261 97325462 137406760 214857180 849731607 398525543 768613214 520091599 957782266 624419698 857926244 297177670 638424959 703879472 221745404 379912946 188181221 947305425 410108158 782334441 728347974 348164801 869823578 421956704 320502007 156524459 744491997 175494106 839848090 352102374 171572124 910605964 107270052 855080120 169478745 313503531 342367361 94772875 44829855 474491931 577522809 501785343 9908532 812795263 367392462 319949845 96096733 423752893 817539502 266862930 940868334 366500208 833184550 387254508 703527975 177973002 879863959 147222079 853313851 31325751 267011365 995582535 878678537 445171012 831782822 710633930 162142135 30685755 237054929 130791040 40164983 775099749 506696210 678978699 924947970 541110465 573490651 501768485 799799169 465850265 823386901 271748153 221441309 622519642 119492964 228924731 874753183 317757697 735491912 623013584 779135155 886002603 214248167 133356097 205496043 2016548 719457297 453558954 360932313 714534874 461709206 13921932 758535242 773426216 740573079 306948498 27940564 513650566 175287858 228860416 218042914 653561722 255716791 40117153 670778056 940665067 925875543 490489031 357213422 460822503 795888443 554963238 149883634 714709878 411553422 86637982 994042393 516899380 292712310 195614836 396368294 678794731 931418969 929734673 657493325 760269839 668840202 800863598 656072072 36985663 404781664 482076560 252016481 715629986 465090722 342813580 925682590 861592788 80978775 826119757 252228421 614333687 239819796 451831450 38809634 855114851 271830774 926956094 855140233 305754060 443904818 53788783 175569347 989569115 46967302 72669958 998967471 301298140 198949511 709920484 861496747 574347614 729233629 323114093 818967927 784275072 355833481 794616670 589966223 766412349 531596161 221592885 692626624 543292583 141323336 511544684 746738976 178909296 949052883 778453170 662976335 722274035 342453864 990223700 525002608 399186182 263617226 721632616 136488317 752365881 209067499 988521014 500238964 476269714 640497169 634687088 483287632 781098331 248334961 50128942 316190858 19850599 847754350 670082505 998989778 112727154 788266212 534864136 185094552 759405078 911833320 602985023 288992743 574434319 210768644 653931738 954063187 138621311 948031019 426813727 785533292 643965951 838373713 745718927 718239603 674489396 840086611 115068296 536285853 219712832 945915313 730453603 218757599 953129021 760358286 158623469 818087520 200974749 878867017 891026079 858184739 715155478 630530153 455274270 900333595 807769963 455441457 154232468 344675526 64381162 589956018 220538033 118468983 148365459 247699380 963408928 51499554 624651184 508485361 384131009 716779518 429973537 910186190 445701174 486403673 296013407 748454006 662247438 178672683 73190661 728106937 411277047 342625019 501960157 955148652 270074442 512761913 714586802 341771533 162155031 733473658 716862600 318003671 135461127 634256813 803716719 93683449 885557969 500062101 79848333 638607609 53471776 72220349 704658321 808801256 646360618 190320899 74586701 806835192 502943497 415945495 611629932 153772934 960657650 512680358 583762788 10495546 415565788 545304227 258373817 833423372 208435730 358672427 149886126 107222845 49445919 884725272 711370694 986291692 456983535 134073496 834133455 791133443 957464361 16470901 146322412 692945087 822829479 197153354 624415940 470782109 588809300 357923773 440539498 421265609 259137925 133064239 422963077 4007161 644059186 387124458 361183261 717054384 27083746 551765521 546640652 892972311 896670205 28891041 459426562 233650915 318164943 855924069 428546285 766533822 6331706 158387467 596833787 716462592 819160979 392623414 879561313 302983704 251973556 493198400 200819811 105427196 568162524 363819771 164839839 880308781 103781337 117353732 10453454 151238569 864614276 259208539 801231835 425173970 810824649 481175299 443563940 135058195 301167837 505705260 709531923 352854302 714846741 170190987 265114804 817133894 269339183 758277205 688590804 527878344 158131188 374796870 283389218 386552380 531027771 391428128 644707257 471190545 746748988 787223734 345616613 641415623 745731127 39401536 255374926 222839860 236151352 906758760 286349771 232233817 171936108 536421715 699303825 529396208 23328256 877724503 97365137 3248990 619273876 989265881 928582892 926143926 455703505 925465628 439935247 564307518 812203805 662430955 800150699 231120036 532967235 145791869 928954149 571255885 377693128 823649750 157686950 182262958 955401651 140421216 482055446 578595794 250885282 857847521 851163242 884671601 755670373 109951441 148370345 950713141 189542911 280365566 173952239 50225753 986998209 540196223 343688451 451427168 440865418 710878172 886306249 374537388 458274673 511081988 504541006 464167325 368914032 600557221 46365290 112834820 332629146 499803430 960359341 584489220 49083324 975594567 777952246 978060164 947479370 360733990 1979298 618678787 20226553 831857847 179069784 236479241 76444222 594325890 393274623 467076241 548288889 59903024 809377420 325938637 161648541 527636660 617856873 355007062 561017063 915075614 65237655 582090784 372261369 536237960 430890777 384036076 625263168 40446847 198909427 436983050 501218023 101641193 799614790 922829057 809648521 988802625 655499987 27097439 919026816 995411325 868610813 336556336 459701748 175914889 83042470 239133810 76016497 349076183 3927385 500087917 741681246 315025148 639259030 620069601 199073745 263713184 712869971 540386176 758931246 177036110 940586133 990956660 350567922 981202048 647327553 951487785 348958804 778312737 880029511 100197892 340240840 406248048 508212102 950211187 640770135 187873336 885166948 269418808 876201176 196257603 514469516 636833008 988610006 502908270 621348582 818703163 166357851 749372619 475301675 84287469 909898757 650452097 188333613 154598033 977733933 384716496 496010538 648275456 785005522 920934544 89457761 465482192 199427935 976882391 941275966 13428791 765501717 650442902 92529258 427820896 294084994 405838205 161066517 908262100 570966141 249573111 362487487 486467779 688483190 947810856 905476378 222553652 563531155 564477521 302624793 971566239 45852374 375848129 284788618 743696247 371891286 753423339 371544457 520263465 763813723 150446273 550904042 981577566 360019937 125067369 457190117 324967268 405344991 865056511 595173765 647347945 936196713 166537133 334791146 823443100 269801507 1480171 817774945 628599082 360852872 752008735 286735419 910423349 912051725 29035833 840767449 155976606 766752518 224480634 269422712 618069837 255274726 361792021 520976654 175897186 496071291 889198625 42103111 977683059 357517581 821332369 307838524 807271089 730113894 458040743 889941935 857009910 107055503 456210256 131520886 551706622 541963693 788589372 93053716 207776718 54619718 983558364 730350550 787564916 142598814 188360673 872242480 77207938 380653846 1800846 782064512 369647421 505130484 484793361 797285412 680000905 740076898 380630233 587264594 227566846 524121893 568800049 365911611 928956993 567958198 512453211 200886928 913425031 20349070 838260085 486654829 737560107 639424153 20340748 77791050 395632776 55578693 589433493 923482119 378936713 321711876 651744718 794890176 779120768 12002211 409482582 692588449 469427852 106100567 428587138 793039524 893467764 38279291 163241437 620457264 5678827 395043999 789252261 748449830 819922582 186673738 414388224 745784703 851917594 518998495 486076910 441918566 819708838 936721622 75286929 957627848 895491368 480710560 367898266 861077560 158251919 395845247 558095388 725977592 911839095 326105814 195757795 846612559 794749976 287841141 881367647 708453497 694834070 288755925 254735219 643836208 656339128 998318414 707469467 700515746 961313389 534553087 369479919 204288424 633719241 638654470 880242784 229917203 657475006 804028653 231156064 644915668 439694520 66282486 443166297 669370073 924620883 808803027 475241322 269096966 865290164 133717320 65703049 190451732 84295351 642694181 967972014 379271998 508672451 593072547 618601435 782894596 575259777 838281415 976305061 708473901 970221667 696651116 576927445 412586722 341494808 286090532 320715220 64359083 877546310 500761345 383553591 765144947 396632139 28071951 659051706 612259199 434752435 300388143 512772742 416007735 272593198 873951443 813685990 798201352 334236313 212210187 361097975 483372008 672509009 781372737 336472566 159570302 379621428 181287873 850266284 601897338 92763820 864807511 998015594 47759457 198221331 751534080 980564009 71383001 644475473 41018761 867773435 558308060 941707685 945928259 778855386 915993256 172202412 479904338 304228665 968395065 110950111 232654346 528163502 895256509 480791026 184112588 323865682 570030688 469346542 720590924 587137849 862020060 702738650 191954171 417955235 573881171 52491571 973913506 477994226 312485843 66130744 192092831 990020336 778848053 416350399 712415452 596684796 62951185 341959666 453822713 144695738 191392052 656426259 90186096 493541499 168827285 231587547 789866367 950310974 619994630 930458287 686278079 976867259 990223743 128032068 759504263 555919860 812825385 921658589 524305564 835558789 865604161 960188042 129278635 647939825 315401951 393900118 725460371 442403633 265431361 258287558 560218022 481685321 533385098 69854278 314185418 549588520 951611465 93737575 977463156 371870964 49645899 325520175 840651726 214488225 886414505 368264673 32242137 693474605 417092085 693958723 70187530 235141287 986743450 392484651 832597518 61818637 296664466 14154011 267651924 910250 41501173 574025865 35650227 754830009 791083 766190821 759879414 205570825 142239827 859113907 7544888 451342943 425469871 523759413 883635746 666262357 812571536 572804275 940734824 806127971 360858377 142318917 784176329 457176060 255492532 144060441 744961633 214614898 945295132 168694939 774915790 697055914 1781309 304024641 771017773 874662151 635687056 377731636 116638424 404507282 934391182 984823316 896939407 603806762 332222810 122239599 979935503 108160798 434209196 186388196 710552672 316988934 98699871 7745706 308656267 807230453 44084489 739912544 533072620 47778750 243125989 434032442 515280491 794747589 115462325 91873071 390743180 590250379 33057817 42076746 539586331 789595806 280313820 719254384 480401430 194418667 642051841 679724924 494882373 796733549 41617842 380335787 165763467 953495726 275159906 817833318 259619241 343682694 444045675 495246782 58423763 979878892 508240267 275028039 258105412 412932136 597985424 416486325 417554676 878364468 45473255 841415739 803245681 18982531 155625684 859681562 797495566 544969832 802705542 913119520 730218113 193085532 993439372 400794940 976952207 741446029 264189770 252429394 938474968 651624106 341328982 307250547 295062423 721857122 504176745 841158299 994572532 615953584 969280924 488638452 364181024 715738404 350856859 224190092 304820501 800438295 241870680 487588321 605843803 922178521 802714920 510454472 390803840 347178482 671369261 236444633 532555944 642200707 349221737 197931163 998752366 441351881 529480148 109981958 27319354 517941311 623354061 757557399 184209595 960427907 11000584 39860278 480316364 607048688 593786924 827002163 314246191 791391825 624617435 685562136 123830124 720524692 483166344 643623030 359247400 218039674 476381621 950438997 17166309 116042701 50631488 447678890 940908846 678730699 403889475 836331521 671617887 955293525 200291505 349455916 243646934 169207114 995235394 113734295 598814932 791550157 169731281 298434115 486874674 24382365 704133311 412868531 406222910 403697061 466050793 784161377 102923645 859794250 894977446 661472398 599030018 964947042 748010306 880879069 681952161 291518626 131718823 271453204 15891650 759033331 516835802 594310817 517158086 683801347 35518436 310517018 19840182 734619230 144824966 108514269 597590994 265617405 731761188 502976640 421467510 148126298 150396523 852298038 907146637 163599519 333807662 58335036 190423012 898117594 96749791 712094492 437438847 422520563 228840896 394726043 236795226 799099933 459012056 547336054 75484994 162381682 902909675 927864856 590612545 120710720 661537945 715881380 630004628 928746704 528709389 939475724 914423289 283399646 428316129 860985077 125267099 652195820 688961117 342234223 376508490 550155229 967166567 502268665 488168275 76827638 722829690 105652192 99620515 826591421 591667181 275888069 867288715 557984915 465572345 293006834 999056532 37677295 982826030 667247797 330611421 884649806 270185643 721312678 804542432 119077272 986575946 779946480 755259941 549275704 629335501 805976253 483743655 94438304 682115689 993596092 815211484 263865602 458021959 101689124 168637112 15094905 158298492 789900908 814365875 360911466 402515160 161010739 197851872 517197831 972885016 485561952 799289766 319801374 239631820 699767757 184135155 824350366 943435503 163067527 145558085 632377677 650799204 414139028 847286613 349926158 668418196 392188104 89026509 155513261 453369567 613684540 256337356 914234835 458103852 547907189 290610433 515374232 418228927 234876724 252288348 642014488 987660764 623650074 761115212 524659522 554050204 23367191 239633355 939869202 927196656 388905911 618651329 910572550 350965240 270927311 481886122 927781398 818473029 149561839 3113592 79791260 647824733 701335285 186897979 532620317 365178972 462607825 675241215 964924916 897000111 714988798 377157485 797993310 554679709 190019952 891817341 617899126 54662105 672553654 641353247 764558184 434628783 271707350 36896139 92588946 882066984 14757633 740978842 487781119 429991962 956880488 424095398 254034954 713793216 602905398 838838393 210063043 847443285 478664623 762880303 249264584 870331886 594171738 949452112 619645377 248383530 193594739 48708869 468839023 532331600 263789762 410777313 430651375 936650390 342853941 183592809 524251127 476831417 940270965 504504672 860967824 396516077 136862894 734676130 167510865 382178718 564612548 796111906 875231608 202544296 980112919 757061732 976056405 190556705 948381395 941457968 758952740 800937504 826901191 25627790 139873281 774401497 249783919 282350628 147553437 145318263 762953589 844955828 297660687 554702582 673261560 647236063 165361604 288496645 125828212 473753781 742049649 48371777 360422008 395285312 826587846 414751911 307160034 562270288 30437773 381712576 817544545 384048650 985047423 767326586 360591010 25969441 813048793 60210533 628757043 727846342 747936547 559183430 605540502 922368930 581943033 63353629 325780374 809116337 138597781 398562181 643825389 304353794 980999326 768846189 474672640 846353713 112892419 649999080 420583456 664156744 73543829 573901866 254879602 262515415 252263144 8586327 38522402 326360752 997575512 538077871 580308286 951227376 829430878 214533760 240798345 759874365 192146350 279030392 180719819 492558843 525133205 432006447 190904428 660855092 361204780 657623110 504107879 747518345 198368604 70858246 598873725 684058802 979458280 668408831 320358171 63600681 721290410 459493708 24179176 500618948 165878611 265758175 768606124 801062994 463485775 944535568 383512682 52805425 544303774 311134146 459788127 327753844 283389731 527612333 334076865 812760085 238319425 846044292 685917878 171432623 264316029 301743882 528635950 756197671 635987605 223404778 16157112 487043139 48762785 142787278 881163093 799396234 600033938 879075559 51369629 51210773 589898316 914749903 20120713 518120660 212377219 801175358 345819490 569428132 895041015 808491668 271347762 704663806 875557031 628399897 702632900 324438549 915346516 465780077 107903910 449259530 665540488 820327492 867911085 859484395 19807871 187868237 333646767 601254268 394149523 70743337 852669395 21044175 690322770 919387743 986614716 516800318 75614998 629033318 10977588 203080442 383249522 241600699 711909151 393179905 410698263 676021246 830124765 789467236 373609247 476197297 189801120 757406952 223856453 458904922 940032861 491987720 22947771 747061478 472943579 442788541 997470283 855251213 176927362 52878825 439489072 924411633 336863220 821850103 546741288 638584218 92543784 650294281 812599051 803821497 146538318 200156701 669176865 268205831 473993401 201398723 236037825 638674228 549626151 393841232 335679485 593106 392546532 252060805 709071685 487300603 762536616 90720900 37123118 640243942 512533636 535571586 654904130 441019 919965806 812834521 311311887 169209847 24823601 897622515 694766261 491273336 909616755 308426794 71852952 818422497 26817684 610738674 459603275 73340068 80096041 946378024 837809054 916475455 320110561 234467235 510939029 805871020 480149945 304061001 47690416 197549167 46743398 90629178 63939900 158931889 971681492 481757003 594560317 636694203 616066053 175112806 86624810 300362313 835339833 753777999 721286984 341045747 327506014 63132765 164230653 28587306 325062075 521028997 153019296 588359787 373129826 78333784 616240317 511387937 703645442 614203787 539476238 139615914 572393031 427842774 642775403 447418228 950265967 750135017 193601804 281045434 446892240 292198656 179997996 272899301 699816883 946159350 653354167 56988827 830720163 685568061 961799598 511494515 87069343 720569064 603263291 487775279 160179948 720271171 256645798 966660317 881529830 393062977 276864234 854629839 982256518 485783999 909986237 699788158 686352000 340967674 638136412 126655816 87030733 964970147 822402880 498404253 343839575 298619047 797392300 906757447 271629038 678121796 957837986 332547028 349298920 675653607 616275128 589757875 88893793 716162852 11248439 873230839 237875887 584595578 58349538 581406696 433117605 56197580 864814331 370618379 992060773 488729256 175994157 783822763 736716741 674266753 118990445 114162566 150790847 802084446 666254050 516095654 829706890 756817755 339770675 902679804 934343993 19350457 207921842 488053650 913392408 999605112 783595469 660119732 706721062 855881491 222033523 767028304 92161544 725053209 203203827 707449016 502880463 431839144 205151529 433420073 564582714 76727864 954197650 476737265 479004746 143393500 182970822 852592038 701451086 576163271 373460158 323839440 653542301 898657022 386243090 941035590 875879957 42963369 540058404 340592498 868906922 635919287 602888200 171293727 957783395 25838330 394146361 635906766 249964238 765536058 983973263 82180840 417751105 829161628 804163705 850393754 826033734 32673660 595483253 967118353 931655512 547717211 838692698 625321489 553880796 23166714 516935474 81757070 603041543 412134087 689470533 287858074 946132203 733015413 358082082 995143885 617412649 776558037 727725859 976968727 545950409 610098652 323075084 263394031 768864200 276618115 340143611 174479236 236077556 12420482 625641154 479508030 747704801 341501914 415626212 28896976 717999357 568002069 533508245 178653131 903701646 921692613 957574132 717570090 738539733 449663914 333084845 545237303 890503696 317909332 396349369 673444409 695036406 917617137 42587047 347791043 186307880 163891851 201219648 497031957 868305824 692390303 780244358 95446539 68137081 620315952 584848187 472552943 773803642 425458104 876905334 761492627 902548027 910425699 285717844 926540429 766835908 688170479 62464703 305736367 976912551 905018545 513965826 5203980 115922571 85824549 808471454 91375147 709874913 346554808 673277742 764556710 535635356 654424636 827416016 696462035 108337542 438961729 95556397 752902435 949622664 532263494 838868153 98221985 7802515 881387173 99056443 780397575 501426955 269850542 913573935 869663836 133259252 38959813 212888808 148154357 612857707 469480540 641309249 665756162 968800048 219129760 507525226 369885606 533513620 542490463 943695079 941651793 325376282 443307720 978434770 398271179 674389307 295187091 651761023 395883725 228162644 108426573 203414323 177291753 258013777 825291844 335802319 36761076 992519134 374521101 155875326 795915997 760980558 704536810 915232428 39783449 239553830 66712834 122170107 851156811 669356688 125080092 486282791 265422191 926380068 23923234 153184849 507205419 642184250 311120398 990785701 306871084 538812951 857900291 369597198 440121106 715912337 293539474 395067990 631945700 325964773 143801184 575502643 57557323 702243814 900890831 277774046 521496901 707927304 767622884 973626915 274681702 172303203 351173172 247741693 185325219 608102353 251994581 346906527 90511152 176574463 572919376 140340268 452323757 857938545 113205573 462714374 559287032 151249144 867545199 269084338 532281463 694280253 286845398 692313119 869127479 973250856 588591112 771498048 868407056 959016653 257240821 411658603 147093378 620488481 1674340 510599485 146242673 42249202 259899915 998835046 40268490 744168830 169357120 342497064 786139618 547807381 7951474 333601441 878374608 167166059 788874198 618375830 523905957 374918909 190484340 424034246 627337401 512516533 859077536 147948044 570481875 826645593 121987574 714651432 177657232 970124411 433624031 354492361 25370855 918244431 249903106 119527042 609221035 163883012 485020590 826092201 11564685 14756413 944763370 141785197 99333977 386628224 477481003 213861248 348999720 579589632 782426129 500841224 214396003 47571220 33065356 986630968 421529265 899143821 740710110 779292939 785020413 983741620 999023698 972056935 705146199 603512797 186530579 147765594 291211008 395335816 303425785 902042410 794752565 82986393 739545412 271160287 635436003 829518739 654039312 116121093 572900389 151380206 86254354 727302118 431734833 23870133 27778016 23683388 385529815 996990060 182468347 84883682 118488988 446531804 846254659 212972491 421149481 7989608 913130085 766049282 809852824 752015385 295445458 932903373 806124151 7437362 824291478 535014127 39957962 997955546 771162349 523617332 229748938 154109109 363749889 658395293 19878752 932187545 526691816 687856928 821937691 279779548 451181734 917871877 468262158 458164895 733694841 635384535 430944665 963307791 886658824 878483220 835616661 149382107 344333963 983259932 453926785 393821403 187965404 776661640 385877730 645533378 472921610 799740898 276653997 161574620 403354377 657312485 451161033 739390506 642280463 115105682 630292290 167193485 682465097 562181547 785663782 238415160 122350502 659184036 772081559 155289135 614369253 304086076 15909064 119934041 378575238 608498220 894971085 344134958 509882139 877320169 314077085 357776081 817390608 882023291 572924514 863342098 22812910 168570705 504531250 740366164 632014307 62895149 678581035 473581536 128732699 771443035 554526443 768177009 842812277 904622834 629442073 910246127 601095796 355719775 715580844 652752543 201820964 459450464 971950298 898485260 435295162 318951879 116754896 545657208 408162217 300188591 280570165 182204853 515081338 149519160 856057371 948310463 916687320 774662843 40572632 621352634 291701995 272716395 369035133 410898213 322386348 295308014 361346216 93600027 583035614 958364223 915999400 139752356 474624779 222997367 677441757 984564552 530698480 497448305 223397661 166070623 704342753 885909008 626530662 927122968 711388550 474143842 942070792 476953042 15660255 748289160 816788569 469940826 76997665 452905760 442118139 23822521 672466387 740849438 540286060 276909365 910763524 100128330 125920348 575135278 698429331 986787147 654280204 912278988 859795961 408121976 840972205 604946906 258197815 466727840 1865958 160983548 778449515 681926644 482910394 604186377 42483749 706909414 706665041 44251417 724853987 575677033 374710205 343681086 151643244 531962298 95879680 860993402 618787410 478687547 894621023 439042250 779790334 811767410 463623315 454639401 574780819 211079392 145673398 684511036 105382559 636771958 739293047 882157805 968293134 510890067 311821511 91135578 976289835 508786413 452535587 895505716 676825526 513232427 704646492 227537511 968465596 785589503 3377032 599799372 455578975 474758501 437193196 649095800 1327436 720059839 173338363 826454791 912909461 125270610 192462355 465852529 587064302 134299619 887313121 489723813 285309708 930902054 14074431 514283155 176155539 371962289 587161831 553737682 294014170 816504063 376768895 404066738 313228279 178678550 295956156 535315857 275663039 150335543 113366885 53015464 49924199 795085462 453281583 763916033 156185321 329993663 351965003 350962071 349474144 127334106 456933942 546481605 411841562 306458991 62284838 445581462 660545228 362761374 811481979 89688536 968798353 714297237 462525036 175988846 910100572 285813379 681765339 923607735 587248125 931861618 98837837 814485617 628073219 940167094 103173376 288484445 539899762 596601554 258730230 120486150 270948976 400324904 541473394 489312898 703270343 253991825 254095623 627658879 390688798 542359356 374814793 954445127 317451912 849241769 973804182 117994386 932728166 994727510 111815316 50465848 822456674 800661161 10004214 705918872 538626700 185358902 393948210 436281159 809352600 302970874 605556679 446231168 769558426 701510856 591009779 873452272 609870883 321604317 923964290 836364860 179914039 172887935 643459951 701127216 646817657 792156975 887395881 359353791 731789219 217074020 519135267 346255404 697620728 72551857 950897218 650489286 186646290 466851437 610920558 990578789 740226403 807285895 628143001 514589716 369926409 637624243 356423625 319459894 627389234 625124549 174971707 325377031 537192509 872574340 298410073 185032169 421570464 979094247 403272771 409738816 797547533 735549658 475933289 689321850 955982691 124230780 48443843 757465134 532813499 243768327 483530211 483738769 950692216 770387755 976211326 621523076 724746906 264432481 18788596 679246706 355381388 126840000 37251371 226355816 949580520 437955557 428180052 309489754 796318043 730965979 727594747 870718697 538745741 915901444 871188129 325937698 873275331 716247182 819238868 906132151 512507893 500153032 536183911 823921906 256988593 626665654 908979807 932181613 347870262 147448759 929346483 871317373 15052502 933107514 712445752 427437378 785945504 450940613 43514112 90022349 250846959 658284799 335789976 523213570 824677467 870125740 550012905 963693320 206836253 380825734 475024906 45971957 730387047 599426336 776001118 907633028 332286762 782007133 483109610 315159325 173042676 666112415 406156974 172323062 162430247 495467428 590231393 371762690 246792859 457507729 109906388 178058728 711668730 65746701 16525155 920320541 476056275 399261777 965871296 888962576 986018981 353246473 830470162 601408875 558591810 542974942 622827868 574466722 905501648 349632838 469215412 993342566 483154851 21898720 504446139 400723947 439283280 527724439 979912744 672463190 793275248 572230416 387929737 11870105 844629596 142746769 59703060 193538280 912383138 126484090 512036262 143948838 628995943 421324895 700620142 407013706 972771851 663874889 477361570 644885158 788642627 909140081 601742581 226372372 13541734 529098859 875883244 479554079 553588955 885051886 638858700 238482243 257549233 848685164 636187262 595448099 395778750 225644031 757175244 80084483 316402166 784013761 90821832 604612267 512484229 211163961 504655656 243153390 907249143 596276804 29276176 413559371 590040693 722068900 47211972 544814636 979475076 978507256 658262241 417637643 730528050 936265938 362974684 20686051 376178847 204716608 447511132 199462628 319990429 283197781 264732419 27631209 625586268 247161851 341020586 387276882 359965653 903625918 809203940 871050347 73325852 400318692 397555321 679985492 978324747 443710203 165620866 878419224 696644983 93979227 935563819 857010706 131641859 154351181 686363244 545945841 952595355 840890382 719090798 982775208 109720319 507266121 489569318 27793828 719922586 794040993 15437729 674564232 115274478 446441981 584607793 357942739 149080959 180939828 73975057 810435620 220555870 959889674 787165036 548889854 935917226 133398094 212968487 674352163 874530556 555048391 746326433 266127786 212529902 902151516 128800230 283919974 833518508 368513361 187083512 569545164 196227548 173313359 382003409 77108534 76891120 241501455 245851456 224839065 685358387 178668534 747085109 837155353 269795064 683650277 493054392 189707552 194474773 502674165 304639973 87183868 131093622 998309195 381673882 651990053 331805606 775814522 255360327 117988791 984560204 189730068 830672213 377492894 141054692 521405399 625509353 67709191 614524151 465174202 710417517 280246190 492517217 953590848 719337441 288222736 516223365 931515676 684580120 853890908 116039002 512629660 250424807 500788150 447648505 287478080 817665134 972558896 398952712 457873403 985043695 585019844 476917855 355500666 93710419 250898925 73821100 725699376 230164993 645336367 596396219 741502971 54198033 516383043 748103472 437163440 457265303 321692730 477143248 428908599 723546982 537345647 149071871 528917491 92969858 650401949 723360850 539960717 827474456 429134645 969422088 229611121 467981121 939610453 297705100 164792361 634128234 927526908 734716168 100501690 626461946 719129526 802155669 944084872 49640455 295936315 512671841 818658075 324474697 313262645 415124321 892173727 324723139 875178763 503309809 267232383 523071132 977483950 503774900 329302229 293402796 405138418 976386345 603970536 298838655 673688278 932048327 949651394 379986359 524033934 997996153 787377505 552222230 306286935 925314247 982861303 385423994 920657450 618890187 352157648 216759654 243492805 150417828 203633073 869803204 979227280 495864733 34591450 110246978 791356563 542899822 13209567 59934441 831142883 419684468 322008729 788058682 468002233 661205277 17158112 56191025 226426318 734733746 489921550 136173919 775689646 79276054 896402125 939984099 991104490 468338407 76857201 213440323 653934235 530292836 295530030 739775962 869642903 388100008 516498886 864378079 651413507 799615481 56090942 979423425 590214529 303611367 793338034 370156155 745202913 52058500 516164218 762192381 918908043 141248001 622067150 296391757 679121163 593763519 321672823 293871867 404564100 325348095 966399617 66622091 261150051 803671324 464580808 720212705 493881399 512244716 672165977 125687908 701522155 669844856 773677504 515341234 318801473 546289710 852422636 652235074 972419897 729272388 766295440 2610526 926846477 906089969 363406591 92605049 697407341 297819635 305117941 160995176 493043553 872361873 944298709 357391454 120229461 852132592 673434472 427021813 547263235 468901943 221429608 575233253 921934024 139589310 790510196 728595309 741512857 262940277 307179370 317800821 441842738 923479202 82525589 818434028 426963599 611219489 955186075 563165069 281693922 535626016 837414516 765122805 387034536 64350933 310863004 127656064 370500878 888703532 948977738 911722291 344875672 399079761 642349560 835172275 879903698 306472206 998393974 275312799 780218473 305067426 939339522 910730077 488811626 623964474 173702362 917827514 100620036 847929325 289981936 314412364 666536167 415083218 313145237 801866702 179326837 506710985 720817319 811830706 281902344 664265152 330079891 78653053 779390341 610565388 207164054 867641740 506709102 754728308 352752168 974183030 624228209 381207817 971361330 378031283 522130981 38351392 867498547 149423444 730476041 364340231 184817507 126512577 925972220 842629658 803945301 349805838 317873505 416803678 52327621 189764593 704121913 978445527 109354981 824706191 809579233 348722162 220759804 757516659 383481920 647196955 138105314 395659225 313137849 847694554 720351551 998557820 608565317 646954544 806415968 581234441 93626256 562851095 589952340 606008132 41465460 267518255 909321562 705229187 460108566 910835278 413564408 118044202 522011397 164962318 796449150 407389892 750490660 841995610 25532927 836720292 311588724 250223597 709963236 62656552 287083356 550785728 627645005 359162946 906151647 37140638 674444716 919172075 591617640 984634024 929769988 710393439 16632049 817156613 57389769 178584058 49800036 528221671 461691293 388436806 292826679 220625923 574225617 959401650 258798605 223970972 419299086 199902514 755807123 778479622 948356906 120110377 99940135 922858317 293043385 925620686 434016985 529983728 272431881 802220315 365166507 575447207 313689454 526053523 471825821 921008979 755340114 306703379 267421000 483246064 249450472 788628639 122970639 402739907 627460936 612152626 673070804 829633311 538840336 832846783 125284095 945785853 915421086 439105758 363025932 246017357 558191082 299701587 319106643 140785677 211793476 524700299 711859376 534279844 788968263 36522116 805902604 867557154 57886566 389160542 44563648 559781343 952819049 703886382 577422945 879097386 95996009 910532202 940834331 302389018 413960341 698348759 864690138 498612148 328285766 316949902 929796905 301148859 380889350 645446995 274864615 578037120 243152104 750749802 145491957 942439608 659430405 154639554 67044172 570324872 780951947 529986599 600405135 667063004 833382024 765617458 148575466 267961894 186539684 432024078 396647171 646358359 574677721 653182567 397026730 737406193 806795058 342281644 586961924 33025880 921045253 50558953 190151553 430165409 59474022 1141610 676868901 874273423 844210829 434613894 220706353 228164835 321961960 990768025 84260729 712205934 760346209 218205812 457983894 886849238 968664047 689441215 689130032 416596360 612174496 742027184 192849702 568273496 173678462 923336567 464270351 887728624 483608015 146155768 569377790 151048990 851023399 266064133 763681410 329733371 891129103 591421957 728035105 75920103 243076427 795024907 157385368 110325063 572217871 134191117 8828454 532939871 421619687 857936833 639021062 143974229 973548341 802256709 936949132 249632167 390793786 108385295 742047805 751932189 259935561 84478052 123058752 747657743 373985916 448289833 297474281 650322118 266943971 28959489 899871790 915592198 721642106 552266514 380199605 241366071 364562852 800101192 652661939 172580742 178884392 985245443 749429708 802174966 36624940 339701925 708702093 182043527 448012144 852268934 120671420 274747364 177168017 14329218 416094824 843586458 639852924 224060120 358379470 720301045 5336126 280728769 197218288 603863572 47429268 753677407 863490702 215294639 607748724 131963474 434297460 680930199 267649735 856681902 230489675 676223387 657519490 99242993 279837369 804794167 24816176 414251840 262275824 197132690 142341944 632844736 590186498 644064347 369857926 326085977 396010314 546329161 304874558 526175663 373454351 407294938 77381288 978533925 544444177 134709975 381402599 668234243 746104171 224988457 812141904 288132440 565352426 477489035 941495685 568861687 262798963 259746456 590115450 90566585 463926278 175740682 142060890 267684757 268141949 786984705 562226700 942834057 365970660 334774421 563360177 83276906 273661042 459097177 652570648 655130767 915701197 523455626 206089570 55098226 143848597 923820982 81122191 883767900 950049273 575206270 695506895 856744001 436084990 425031702 706982911 37163226 720740769 830355667 234671714 568364769 933294069 148409919 115181214 471316908 303115331 443189930 863241762 451644400 665724650 671876406 566483651 677485725 527561654 528252111 606596222 756394062 275110872 998705960 319354519 611876013 284158818 462550479 198734831 322138294 265831927 394485765 520449325 803092032 34641666 831744118 917852889 920584013 926180854 74506203 519650175 180487374 470366339 298886545 60968079 452806463 351653636 478753540 509241903 459166845 498886168 964644634 771732915 519755117 94088979 232948754 47128008 52029541 885230729 719144749 491979738 827542447 316488326 335377325 977518972 608776711 475290489 872733936 803825591 65756402 868740998 273118026 457246622 876565108 218208108 639875450 519676924 683443252 707649039 406780169 193907175 551432955 436010858 108273084 53415973 364043915 474312435 124295376 666831057 324398350 780756853 709469840 936443164 546699157 922571731 293624917 494134330 147647999 490106568 783918615 562304263 169076668 202633877 777947391 262308090 257884450 424517320 385654515 410505147 136114693 362976192 354264108 343822767 968776474 503253201 715262903 839947460 198177114 960477578 142281682 983994166 191113769 555078549 685977668 197967750 653550944 923138211 398610579 205587069 487610066 442598587 384510538 32313170 25027982 126826707 401410857 108216988 198435080 302400800 378237252 537851357 142713031 885331459 2755830 474866183 777514211 800431731 787713158 522208714 58667375 482619809 19671999 378924470 366678428 969389141 490860632 960153670 459094141 209733505 862021850 961843257 428625655 589878439 625472338 948847518 939489295 377413955 754657615 466217595 525561024 95712689 978029301 211891979 760643566 830005039 952235839 127076902 349521239 729154536 541076336 269930684 227743180 356399894 164690608 83294901 82258390 263065295 737350153 644264681 995245620 259889990 511818117 97662376 796745800 573835105 34824048 508943283 337364561 17392230 189879978 725756885 596542876 449940594 727560498 83681305 270119060 963603207 810608815 720397576 903846061 465168514 574590048 373249665 724367258 110798904 49089369 332148615 248810371 946195989 215539644 871186432 29942268 805748013 955548830 465901332 840556568 716625664 302237359 85298301 321581010 183086722 849332872 663056953 487433123 379835150 488945683 101770367 857928482 937576193 201890483 847615680 894729912 581037274 181813909 857162264 130559442 179023609 148165638 59481827 913221793 201172072 16784497 441107132 237342332 37943865 472364837 55323600 258778676 193760791 460774859 348407941 104043434 582725650 170932207 602791413 194707945 523034114 453035979 533754896 986311552 694052033 583777474 56834678 41560044 582971168 583020415 494387390 667148849 169077743 131263778 316939002 577616007 261667206 826266444 263984550 614610172 300055294 956292686 757530885 255858220 446209624 153903292 989442877 783979724 843592263 58049150 290414868 545194472 677797123 534869004 751879285 234102683 610987548 834517153 24174088 551581483 993667372 940322539 618323170 472788033 518633297 432615609 530063731 211095755 41936325 786010255 158938326 478164025 944913804 475189689 643272932 409507598 600207143 436648116 204328681 673602128 892262170 213705778 970361903 515842937 672508167 378619339 969022476 432768155 933960362 543192797 179703271 248871770 942041760 233721806 907465954 546167812 431337019 333213266 898882653 768750605 891520784 606387604 922043719 495518268 339055938 136050493 175632018 29914644 436573930 823078239 343562077 723962575 284039995 590733717 655238262 590503553 528161023 802943110 379272832 359016385 30493684 876695682 649993645 343444205 310717341 623167664 527376928 132099930 689748110 238756509 794773029 317438759 530533053 890924422 628347190 70846866 641878587 515401971 957627028 703072717 365345628 296280645 463085795 575630254 298098890 263028439 242782883 737629391 42214503 166433357 428783845 172353196 48229449 866490028 394411923 250259674 279081290 97212115 683831248 507610258 552473907 813387741 582315799 925676431 157852056 385464646 519752189 530511985 148785181 500505019 86018331 759325194 51603930 315044319 658656256 550085078 788354677 133876272 225595970 340018986 80864604 922483767 455256102 939901510 968556909 993201702 879852538 493522449 389029389 978150202 397820319 216910988 964695888 12560459 560668849 201755813 674205159 308357979 913098152 750902012 659733499 842449508 33930490 113430282 686749795 712620657 644555143 561054938 540921060 242430982 302603415 737259663 831558527 585999917 121022771 241164133 688813977 481594249 833762925 667143840 527607500 127401571 178536531 309341517 141168123 631849219 7075085 504113225 504313219 230115298 508188414 235583967 835290822 420092196 546232319 840662295 494626713 723287214 174705864 453770460 760617839 532485401 758837393 275514817 568184921 515416199 10003746 673977376 848072307 329841326 670506782 214655438 788826452 178805707 513486538 632067863 707557955 955810124 694215870 158582504 721072378 49498467 548254057 765929374 68268966 758952538 98986166 648588917 796514606 542353814 399056831 336564970 642211980 396721814 90064860 631359715 443950344 441868652 687491253 933079679 330082132 843539516 388719798 546297627 567092282 624046841 322759567 583912622 539398910 311326391 374389914 242430627 373974204 736714295 598213001 635241272 11381125 860683446 747783191 274510203 311773484 623732852 85828358 136550264 747237395 495406401 633594958 10644209 87148310 135792800 678595529 33166825 375506468 958067602 435129142 841392416 676519221 224799210 741284726 322226635 83002303 116978748 442396921 2288705 321871687 297191345 870650356 858843542 538327811 923414854 95429710 863080580 71635287 840582001 824344868 59878890 231952852 397792093 770185848 210057398 692955736 405572430 586535348 269848991 190071640 232194619 386671782 868119940 12369039 837291019 746761245 941724176 634338755 738227510 714698449 254164450 254172826 602486561 60282692 131512050 761430823 987661105 339767049 443569953 511321299 940778982 877409414 186031789 252715409 795184067 941266088 714283786 950621070 118846880 312097940 880215233 525684395 420810255 837875006 353361877 93166844 510395329 645233515 879032564 292070037 233362353 24287238 369937830 742263595 927320977 609238677 248015106 445600069 986219749 649254959 636493504 939577125 610862506 548793080 194017148 162394636 542581882 786563456 478742067 538798537 935193820 243278338 117645761 680439490 296025565 948980168 34636869 313094340 242063928 912462454 636762027 690899791 187569923 501844233 210226202 702291120 208190015 680136836 176429499 510681116 465477689 612397572 28212468 197270735 604074976 621861172 430768643 646507397 237414063 657185453 110921337 479447538 528926833 45249236 954443243 740364615 261765167 167848301 299803057 941101072 365773282 106544919 570259976 214878503 598571119 584989638 808184199 214185182 395184007 666558122 252139359 188380704 488259638 100280558 297382940 375510865 265912131 231808185 192072465 237339048 952558120 226918936 96454664 67171059 390463627 785953186 230701812 294783139 836585640 943690951 360752027 259414058 502824799 689380432 18678546 601123392 125785591 13678458 317215997 59489687 450347406 71996181 268227671 423922565 671810589 697262991 591375973 231244137 852497952 239836958 102628640 721444673 9482447 886585034 250331401 667803934 840964328 948039895 74632175 556801767 291640180 66244037 174981833 611115859 409833816 100947965 124867722 43537537 418902265 926396272 746104739 956959196 495284160 259618893 395046792 882109493 277470512 742165222 174435651 527146103 226129246 908800016 652533363 184719210 565949313 91767455 972388174 647340833 987004469 943942342 662027402 452142710 334382430 821314483 452954498 561917063 133598973 424357370 222577548 511389265 574488686 578436287 225546995 89856953 469483899 438324376 388789130 645541132 704788560 604899938 37901699 20526257 853694173 762589745 317898012 284113454 261485585 317927241 303860748 713747234 935787738 804471881 628560969 96667291 205700889 634156562 525787614 86421293 508922086 250420555 422299931 727239233 921682436 492779981 443616299 892255030 128894884 740783754 941749656 185329923 842480788 949143824 980319670 693587605 699751907 51215145 454368949 8267338 312952801 385062546 269182974 807955228 64058149 222515875 666756561 859894105 247205152 128302943 386622057 55402771 42073953 353875666 976726634 338484487 635715375 336092589 10159162 976450683 69657211 492830172 160810077 133797522 866187222 239166275 796576008 790091611 345534021 928314229 902397628 165237717 472467881 687327929 18370073 134827698 796296775 1890139 58967522 951385243 775198723 465289129 904580675 357111267 642365843 156005836 53929516 15302728 932449890 341965413 479570705 310564307 475413792 68576079 821587953 859846522 387884518 940138973 478275282 274483598 327956002 145794710 951527158 969012286 810590389 98279130 758794845 511343831 56424089 467637247 176397892 837752184 900871691 981992692 119281011 741460080 876976154 645403075 778522312 695190942 893542461 729974118 195624436 264377848 406921393 861667863 96010186 738830920 38233208 222062618 885542178 30325377 989326683 189058057 118462832 325513763 480856368 424316669 231320636 286227512 511840185 904123435 966310755 366405726 713253357 5171962 305765905 230522817 680630474 837127693 588263188 628086361 378981979 445949666 367623027 296710765 731990372 679775337 68204155 775003928 295792453 202358378 95630560 888232824 2232698 300547506 784242282 378798186 764179546 991810238 262956012 250413146 784073286 254210648 878453583 194676238 611055285 881981401 120109478 496273083 455088727 396273693 445084091 427990095 356889843 554381707 565439646 925056860 707856543 295177759 22760801 129219784 419278951 893005390 938446673 400782649 291824153 522929835 904454465 747126043 366807452 257260752 765336415 168902238 521683467 623892007 28271452 507431746 410589892 456688204 748118316 908902998 312910211 863501413 731886979 910996250 662844265 484686130 653169769 303541653 966783523 93272588 755817769 724720361 140165529 640117275 158575403 457222017 843037372 960115208 79455128 84843412 820928799 885486045 51367708 502554794 50926714 952422146 535369415 713577397 598926946 711773223 194513172 56581696 562095105 784983325 562020753 223997091 136418009 182489596 601895648 773487497 908049778 716857261 885679168 452734332 69558389 363661047 18195138 94671393 851746435 64024213 953484808 460745472 984286746 8493090 297725075 109655000 655030579 548077826 397584444 374658683 145110276 272805626 543073931 1928988 617306978 363606089 260360404 377239665 329171981 303878202 138706806 723932177 752275556 93859216 641392389 5910858 880827229 598854209 516904415 794918218 829858394 503306456 740962243 713080090 365510732 900236182 406246449 705511348 186739034 600682525 656693673 649223168 69466859 853095429 218004216 242004896 483788129 291312684 257820457 627326471 742628339 124258742 631518596 568089834 267999753 584889856 266039601 315910977 561975482 680556193 63216760 961405198 778489687 573390739 585463590 381717108 535022881 74417589 376217407 231697358 271746635 340286677 57531088 257930911 64488638 978850905 36098185 687864929 318393350 97701833 813235371 936597109 651911158 516332364 42817269 991917098 642047821 533062762 136822626 889202540 975948914 543427221 120652309 313204372 285793604 10548155 705035497 627642011 987667020 684257447 81849968 11096589 456521614 536843604 349277589 688203871 323469123 859974683 560421036 838658255 579078474 594148893 74481961 255899368 323561356 181107756 759296157 389536427 940645367 653519133 295949355 14179407 440097902 748420017 627810816 413286430 999748818 880893029 57499 338147560 279869917 888314522 93984583 40793175 783536899 595361826 292691212 288947398 638887448 773405938 334623346 462908805 18382803 620820380 890806116 143875987 431727339 976872777 112991810 578524353 718927329 431902962 421357478 584296562 456094452 361805045 421849953 717508121 445518078 184252967 718755488 511918257 768809335 131363040 613771476 273815968 883407553 590309285 402170174 781574348 996324045 271329390 178210597 431984481 228568791 867693033 174650601 378891411 286570477 392548848 446879859 67236291 191963363 159871085 863867591 160584329 252955123 814317677 345088252 692330992 773782744 952888840 367324897 352558737 941289776 199422666 407295225 919301612 31834996 211447643 672936481 516626013 920872905 491547296 632343776 329876949 419323077 255189163 943984822 360814291 21354635 6056266 833178765 141614529 617874086 900791622 670618819 254288356 950289592 694912388 708058836 831098450 190723773 272352997 656575165 168187960 119190221 526234671 557022206 834681163 307889669 938140759 519918241 703042455 757848344 11128380 780833651 324258500 620107895 298907643 651074836 375264748 72980933 665511518 382507442 57443155 988023683 355838398 913038659 283298580 205079483 270773209 878478129 911656219 773153928 396580783 954980417 146699257 467381303 481891423 337500775 450314640 546608634 432920991 113214035 956722451 566346142 12232516 960954046 609033695 756350629 895266119 135824837 790783501 989304529 231854365 296387222 119028965 452505168 520639534 755482758 83348896 566278857 847509002 170662965 268540541 505961596 431896348 796783373 896252019 499420582 704645153 849658032 148802174 566521447 291677338 991004454 862881591 34006356 708984029 291348305 345444318 340248682 742996818 602410396 800941536 964368680 893309495 740201098 798209099 288327809 20686202 935112575 650740148 814744129 975549406 431371483 305927056 353553669 988474235 944868487 928801393 818318420 995286232 315066987 55341722 182478392 349400639 533394976 963320643 148549057 985469711 723332156 222919548 273730107 994361218 585529831 30728658 778370508 374745058 942751837 450488417 354353929 112851793 350390151 843240566 46812276 887099418 544689783 258973399 511942726 607950994 521293965 639881343 373718360 300878986 960725951 951898595 617440324 158996311 436865282 537987243 771460427 177283822 27793905 78842353 570702426 354682650 301391883 666315078 338437715 54151803 297159398 669416086 40403410 440125066 443200070 55856582 414568355 365907793 167362171 412459768 417981190 435395895 687063301 896536637 708887038 888730755 852163761 98446914 844981836 375735237 906725021 486031721 53450066 614631537 788416375 281169645 541557975 24829179 693704801 325533004 34257533 374978887 262572314 709528122 719026774 650047223 875392264 440592519 465847428 470759648 194451036 653475282 846651656 541605911 891859622 680715962 316464441 471855368 362185899 883535934 257217612 507758309 653755492 853547089 574999427 145669813 988187312 813461686 207223313 716140441 114588363 413056025 822676259 213464243 984594802 899279403 245887758 464186785 360215560 818771741 697787013 689771840 419448724 404057708 754843650 605929268 687621432 69288986 824477185 548025539 902773967 815841208 917046889 234269614 884433338 62663277 94701151 594697382 446596558 682473877 190669702 563902406 802440118 514117002 103659224 552227976 726229476 318048050 113849564 343995242 172538186 695498923 169365529 887832811 567176395 470031688 210576759 147886815 646684844 230158524 899997017 971864650 63365063 163924461 578933042 377009083 241446810 443747349 953604771 522665157 888053245 47124812 789411651 969843120 193411849 994410174 990084608 642784226 98274579 151740509 170271385 848064414 560348085 882037277 145023092 498703997 582009342 981126790 913325788 365667579 639136863 583878878 133075335 203428014 425284076 118336901 427563291 821704245 705911455 125009545 194076601 266348283 39023388 12680770 799264490 389397797 715445658 586534665 670559582 397272477 566265767 278434753 677216058 204544919 852984967 454201228 592656010 753412910 461144248 985523551 208741201 670253532 695254029 802021490 880958096 987300977 391630597 348365829 359067833 23545624 576704427 740052476 899337369 636040006 732507661 245936145 681236933 269023593 315628632 857332550 915548169 239584464 516216938 1885481 239619685 390120298 183628380 294670230 622942800 710008246 443384370 415830723 730334535 868830672 999531339 494465021 510287849 605096669 107248703 39383326 575158186 427004714 382668326 593138328 27044530 388422220 978014363 445037646 599670322 663293713 246097601 67355397 484662938 267093014 203685977 964740667 278608232 453977155 255764091 876609803 883715243 576465494 201429336 500912313 6306417 776053892 147574872 356200457 28234663 335618702 838480315 503799141 288234952 270040021 592170055 498832433 473112473 262021161 786272037 235071351 522361788 811218437 711144784 56914327 462267128 315692467 178492528 298222257 774803228 19149495 364421507 407301186 340925267 998736653 587349193 585222514 41820423 950655653 480621678 408471742 934502680 889018668 868645715 818910435 444484192 547233615 847735531 125465961 376283357 518085505 338576328 210897920 797883763 165953053 627994263 541481851 81503766 504063157 133063325 849469127 582378123 18671049 684137242 290960364 155371394 529901865 407681411 242064647 105546812 305422643 422291224 613420067 869646029 362500929 859281890 637915369 24536286 124633921 883713602 338465739 867042601 90531697 639196564 927340684 802283600 828551904 57995615 430070306 540372722 388604870 919016925 68846345 636829510 58803055 784480521 718745948 327131506 459259703 318803165 783464871 83316586 883041388 655700850 901142970 440518855 825887116 723205443 456288598 559964047 867267014 907998917 724939798 678661793 459210770 163427867 577670355 163015424 880313342 332583100 453725242 988514593 198114475 505744585 204552711 694825003 428809821 233878307 293177490 727400241 723416072 927275943 101858102 119025600 11143398 603366638 202427560 110286448 715130384 275525952 864922483 721585982 490317864 52505356 501071626 527596532 631954952 723136271 16371173 236175632 210481825 763266855 943160858 896497182 817120010 732577164 539358297 290005321 160049410 284972151 171307506 64669911 88338155 337200882 830647740 93563060 181981016 878977542 48353076 827404507 531832865 692634703 623014273 256900118 232019493 4432084 738641460 364480586 988087730 247182288 427068551 830008398 349161757 711583110 773360308 721832803 761306908 87845195 554663274 491569513 546805721 466813796 940397416 596673152 171379014 241839701 182039342 254390805 191030320 468394423 46146099 888964488 710451381 81517713 602834927 957404669 37243921 827557571 42104011 450883350 975335153 655166854 576551174 769764564 14395899 552501140 139857412 537948430 748256330 651355132 338065748 58138870 219187587 464735000 723567422 685453854 611888617 689538567 785732276 381754891 974923631 831282704 679931220 748035617 464719515 904285222 487773806 1552081 25580584 608206622 611627037 142700207 529993912 49416429 521918721 212077506 979636610 180340103 707706438 716381894 661144326 106433567 663590936 979968268 150303212 216614798 696256232 119997704 294888312 979758219 448360241 182192884 966375475 575700627 793737740 112997386 254272871 247123572 917663708 824807088 934235110 672210258 388189640 118278324 743632259 684595996 917579427 297378380 164133249 926501071 20332491 624335668 179988746 710697671 587424253 111861705 871699139 76120084 396889633 357837238 479014422 725341404 140665095 405275688 414708342 504929102 610528114 84460374 657053467 621756148 504073372 413676302 149582572 308070269 618584001 260461422 503165522 917953441 735303860 532670325 442007743 795623731 240947645 912653139 71475883 728811833 378172544 815210165 129614455 835855878 487961451 79124839 729619605 419083986 209192800 137836293 92479666 246404945 359950805 592719765 63164168 248596414 315628039 573912525 75651401 987351436 381580774 447856427 947436764 968635373 44428025 143107216 242902568 947110680 441347264 505641437 385163578 950420142 664745535 155539919 205499057 652977264 366438825 232354358 222449987 860185757 734406503 572523174 402755414 622437374 374001903 387828260 132240478 902162964 719297226 771828242 88778620 90194520 783992104 680191970 519656276 704942446 426025863 477572950 922390796 961288576 887529182 811137085 33494928 60843507 470311182 764369004 650389877 793145412 86225288 240954074 659782968 499359006 450063577 580348479 161016687 351701536 212407634 232010201 709227701 637041087 740666178 919716166 413887595 260161250 668151947 802667157 178787163 786086625 391242841 263644945 503257440 644271895 38450747 814421576 506519497 170301360 777495088 395654058 718484728 586387576 86196456 8168173 406704131 226715291 33177994 412331081 613588829 808271293 613934326 576251157 578451986 925593425 731917125 66150429 395993447 343944033 131467023 162073136 940516714 332180366 228532873 317352032 615808055 464851696 387306732 606231649 728444157 360918023 473795135 787269399 220172243 211075487 201668189 393649497 48303508 492987346 746962345 849972357 714984445 840637328 446424296 459619171 83521399 901239516 191452829 647451871 932833574 47074471 657031498 66731359 75594777 360774792 544844450 934415101 383731406 692216897 137638577 68171802 124342981 225677423 95882999 504592443 301271902 117674160 727329319 425553581 573857414 31385019 345242950 405252859 707220190 173709523 822199304 255222712 481469032 564976598 135577736 525684462 428163177 995455758 634185196 154314164 825734447 258791873 462365965 531163734 565475751 738985028 140462439 42173899 861160802 86094556 261088571 542053182 501392127 10998818 603674672 898907985 304884820 339272029 174536171 241262061 163434464 163207130 249942235 448306532 630409094 312575032 991411567 70651362 212071015 450753714 448080917 114268716 94790911 531012399 926056200 737058555 671432920 948404430 913857031 830519093 463853674 279029627 148967969 115005540 644337677 644530746 642732079 836666907 884216565 801401348 495378907 828847943 601314850 163928784 543803560 56035828 498661321 676907357 391812262 271052106 264632644 460109803 586884065 389913264 98679897 2628594 392191762 128911749 403838619 20058355 313960653 851140708 53060796 973463101 848667880 943750179 375421287 614019073 822575702 423008443 338248909 445459857 491911148 541064533 265643383 478883616 273919294 522123763 503140639 337349499 143848272 29169810 252190495 760836902 328435143 530202234 827108060 113499803 271877193 671872013 294528880 51464706 180096248 140258218 313345406 62232964 213161191 455590603 89522419 271478273 404536461 160419828 212467084 552525632 862235422 892809136 512119032 329853790 760602301 923547319 478694113 254381801 667226864 279211258 572579725 17487932 897848458 513903614 338273331 958118945 329501647 666608071 857545207 890931684 656724753 784598944 665206302 955422695 929024585 909508118 633640242 489613575 77710530 86863853 499921710 761456873 408779310 6672623 764128683 720241437 99226101 636625949 173427713 964799512 808156612 705284254 440096364 980139018 592325494 99485636 574518123 741763814 428707956 111856129 414007608 719316178 157829029 970443724 697220228 436630258 13812528 494100664 625640711 371362331 481134286 449646391 426975155 535454390 339616687 678729704 56498924 106588220 869271771 311966461 591074663 891738856 617797897 314626095 986055819 692707419 911977348 235755881 854901399 696761290 412029539 75608825 403612487 891618751 316652002 61713076 265168022 31848613 882633223 338014247 776510744 909223246 402507178 996656031 500255409 220526919 974576658 864827445 96830178 598213258 951949246 655524879 160100475 476863098 968102760 201303040 658078805 538186228 189316660 979259227 661533040 866091086 119878434 964903178 490611925 931275005 541547697 114529785 433171863 888617041 610435785 740032646 364480256 418275190 262531971 698598773 804171200 811821748 525802976 119662597 824900114 844497185 247920070 308174561 115633752 838518953 668433844 627864407 353556006 919875218 887113333 734906862 207072664 67326800 5088486 890348623 2042668 385815142 74047673 479097494 783617260 808979168 711539392 402452249 474593547 434688751 163399251 823292623 95458705 860295325 291197905 49669092 773143220 253150278 34913793 365567355 493473545 964372720 624261150 532754591 864366202 513237818 45831440 937593336 924931772 291121068 988984204 144445241 678794436 977952918 770824487 613684399 761546408 537574050 755759269 368410651 184583520 734317117 315508553 148190917 35069825 354135366 719309750 668361622 363596821 281180446 787564428 71631216 676010023 285477349 650541810 999619814 478794009 141592365 754945231 452792783 713540075 999245373 990726913 439881056 368309994 16696300 990830851 252298220 846939121 919821377 344835759 836717533 159215194 149044000 31929970 347368065 387505719 691212288 378387122 222302228 357974887 154229774 940093892 759243577 846083635 958876750 932282420 782942719 827512889 174077014 2054332 225708412 443737592 2014198 744529135 717353766 943783905 239523952 971153973 407823442 939950777 604826887 70549692 487434374 474296750 229164694 831057982 93333682 147410150 922809038 315033583 145988205 209672479 841391294 584230192 511866219 14146774 324229988 869688143 439869063 786873307 39161317 192513399 993122974 390522944 351814269 151018728 302888905 13634145 307900683 269102833 540356710 340998425 833198760 846133793 549783537 540070195 565153981 469142985 847543304 764635115 815098565 392996806 260028737 897007738 874495465 218562839 838128735 735343372 15199023 232498503 226834525 965071835 699968120 755887054 37786596 958641474 423158487 650189729 590385404 150433809 451943188 709897266 529637871 574543091 41438385 250903782 942699831 876448622 84217666 887529474 874130971 485809488 118804240 209284934 968320255 191539926 940998166 778835380 990197449 678960831 23916829 441190132 333666821 268936621 116728822 947134258 944894559 705967280 948608646 772455392 380626765 122054154 827130993 831159332 752627122 279171881 135754244 499190378 156012131 772719368 781660331 428513721 955950622 765661076 360064083 958248628 603684024 374265449 969024653 677308059 858053742 987840007 147434135 197480353 978690129 852827120 591830949 765613307 458058431 108707446 33436192 417429427 957730765 310430138 149907734 720990252 404298588 542359224 610181917 656562064 26741118 57155539 606539823 351576445 31208497 327367269 674037012 522017575 730429188 358580062 904320961 844837691 153676034 29137645 569051500 521647968 469481397 494914876 188500302 587532594 288844169 336470865 481629613 995921265 537874441 764136560 548777855 731972483 645412024 503198107 598781651 347827273 273398500 371510830 140113689 516164818 204862057 23735261 196554075 475667568 672841122 826123950 343608370 152085326 872244580 261806662 432664182 817684123 334727769 360793935 720779809 883592978 672759772 656170239 856554340 687268499 461231366 919986976 521271689 17525650 967111839 958149487 35248454 102464876 891408484 515737510 380639992 454362956 586448337 305422061 62512219 283483788 858837379 188620865 592455326 168642609 383253461 326347917 443620884 794669645 384496737 582296517 365775453 549826844 222273808 7911216 684396115 758629840 342137234 628166317 249512711 182814425 996698538 302975038 817845520 20979282 631233255 115369166 786924908 429781823 383314485 823797022 542360187 806534348 851506773 183683612 229618529 775750199 752571647 946401272 648840574 422056463 394738924 189886885 952500326 284154612 896917326 278861166 434718246 324642831 401298244 712854867 666143535 42999231 950545283 697126041 374447709 402086289 872964195 632150589 386118584 403481803 549775313 318943372 892073173 287705657 721002784 856904011 596093044 640318961 938447292 166284348 610366060 550422959 80285498 817792177 801858572 117369632 594990237 446314835 21026958 953346731 907025903 100122300 846490713 103055042 411012115 959190813 159003688 699387450 414017954 504453614 864763378 862984796 316705883 764101084 74427559 960660824 465980249 697867606 472675165 765379200 473642632 62391425 408220383 987940020 286237928 597004268 19813017 613337581 881398349 196882024 983181459 240953791 945752298 74046646 458145580 318855173 294061088 240536281 131817225 290486742 375246541 691441433 322632140 397882605 861771447 159260386 932246597 805283598 64386537 944932556 139881112 275412872 128283889 62206925 136430906 93624920 692221950 601401436 718648962 806088355 270242542 809321655 781807534 295445208 724816642 183006139 924867858 712812282 81559874 738102729 206028372 200031631 859864075 429388891 371187645 243412125 372287052 760262178 863090340 292716935 23219344 717538361 718321362 63350661 356613898 788529196 481874443 210752342 737930158 178545445 52974779 701507550 158692884 468188802 33871348 878649045 376849223 715540796 899418605 845097191 942353113 274360694 167459735 287129469 681646990 456846481 789418605 148370009 570751619 376003230 762643262 931012731 42747362 609085009 293431348 471308808 835191880 698417156 254369733 753830133 245460948 587563350 26514279 935678014 183317156 236339641 808206049 526483351 722096173 957494846 408861992 106592026 892306946 862917621 640558440 444617669 515731952 518171606 643056506 939210814 44266234 943111273 831067285 939327206 373640122 589075930 68181764 436014365 38277737 513830377 95798741 250178736 383479299 774426522 240135369 997408353 111900451 488441338 514250846 760344926 267106321 893313017 485646654 840499907 18358963 580979655 785659309 825002338 615306668 69426661 72007192 41546926 377121902 830504315 556093962 179129529 536561822 845241645 737824479 354644522 866328680 37734428 688997138 805109081 812170139 853254725 646505113 564983252 702723186 684829543 600917276 513267920 855588115 462170200 36486468 166796841 920575274 811653585 814193598 689313856 246344709 367218295 448157313 327327580 273866568 773936348 752592092 881239850 889399714 179044220 777842956 24595620 295536343 489917168 522468882 510147860 341123359 67106210 981364598 883680328 81729093 804048300 699491445 545243950 646162973 930537201 191277345 424055106 698924279 381147626 707675939 151248013 551756833 763740489 540324989 58755231 375573852 593042624 977753484 811217188 535946852 923521935 156234171 48423020 381128730 751616042 159706159 66290962 752083236 131521942 400748286 283467518 533282258 149186803 612398422 520396794 780306812 369376951 694251655 113092027 294670413 250553425 29987128 710408452 226535706 114712189 543889317 217309932 735249411 964848654 141446697 941401270 293702700 254867123 426493573 529772629 680691121 986902915 917631082 86325808 331272022 646206222 85056330 299910617 279106319 850583134 79389774 74071723 166969699 880356098 674273480 930024124 427332003 771287268 522912669 85324198 126009496 511888801 501422918 412832970 758736917 996643756 143524733 631877234 905235680 134225774 976608791 692567587 365916334 353460892 816659459 902264416 501277130 513131806 910357917 734328964 915455588 799154166 102011201 562206309 890613301 295823583 412119995 261763295 42172145 792734857 899423135 986084061 635531787 166843513 709101392 170378831 969819076 663843483 301632483 95196402 939174832 760892344 249707424 338678430 604920699 90554572 160688914 570226546 947792514 319684644 713401172 786903136 683273639 629706923 59700930 305417215 585297889 409682093 485471374 160579583 715377840 904807720 64970397 70797198 807166393 141519753 597245605 80135168 399105685 527986349 485630434 766762649 591611488 565039076 367071857 182773497 825812961 427588968 992547830 177665920 872993779 695893842 74886681 580111562 339280442 259158499 183919183 737033808 905335275 829407467 695319102 479821578 360907261 82024755 672954962 335832741 532204205 204055650 520895160 390939857 216516362 954523764 5370818 601217132 744885475 602477448 390014372 5819807 24994315 27336075 721692046 137394596 981785281 546326849 763511164 281050858 562124032 331468842 42050708 5656344 544065964 425950211 394256395 332755949 744410858 409026157 200071343 391519458 353813896 133503810 682588734 799128541 553056882 282625025 334247161 557812205 73892055 802476192 986691223 192570597 709114756 242007896 204140691 314028496 175974864 28826214 60105805 108298156 940123457 116074750 868370991 923674299 41941315 501337561 332273707 298224222 929339657 579487700 964497156 69982401 104783324 589183305 13003398 527878331 285263764 232774365 179293931 878091937 222482083 918207482 870235523 279738265 416306419 328322661 354826823 890582436 881331074 776451834 573037710 222741075 522440375 287380944 401702565 563437563 217297796 813778069 371150302 541060705 343351507 553097387 448042768 787367416 672105125 23661922 476672012 327456035 601728843 142513405 62649333 27169690 750563226 129992527 116122653 921022776 54807029 604679147 282509135 626442932 861128803 819711269 609063115 477893739 226174263 288242012 426085470 133244259 955056861 823009074 849956086 750833282 862626363 266037184 463973027 34981847 570465735 397705262 48634470 680689505 99689345 69459372 233629796 665249429 112563254 389419026 956743329 718302641 608296426 828777582 447603175 42271411 900751811 681317421 264968838 680716257 114612203 198401344 802563053 667105685 646552314 238688132 584786527 810811968 695527658 81987096 515681268 640253046 918159900 392121687 718752771 464890220 865083633 767058533 532765305 915025891 917672102 797390461 334533891 867892110 507800447 588642411 140143488 168627514 853667802 261383227 774902700 999045616 146750878 676304509 245358096 443980116 417880549 222490215 826479275 785705733 648519971 170042225 638090636 266829986 420330197 352654828 137306329 273732680 718468134 974319010 426511889 724531496 188615810 304175071 230365773 303237276 90749246 130469716 915726076 797398362 462085184 650736226 198497534 754092546 978567781 998474502 858545850 883557242 962832047 25568616 952732465 725390109 185744248 843864974 148483782 300587861 654463816 415439796 789786218 529900380 22918488 296275922 195458144 377593676 971216004 532981588 294279466 854171539 201835712 832820968 606581313 640739238 419065994 926117009 987568412 793874981 544656586 640550914 967224678 463737059 128685699 612426410 705510619 801040422 829044530 444650220 208966231 153761902 876296166 506383244 996829368 267447202 264696469 276936760 551024257 93726206 42692466 638534931 249596255 722436150 340041704 120907525 544470441 805241137 981769830 885924158 635819365 962433794 614273046 343864433 408773683 794660394 546951946 17502269 262772666 217649190 380533337 255211596 336225503 77483503 106909770 422009746 961506649 1429285 579881843 894419711 464351642 803279424 615156808 853902992 900077380 682426919 342329128 408510836 734335712 313907474 933860366 88749043 872729831 245180959 486445752 727598810 851003160 41425085 140111120 342356149 644553967 555374766 968088201 642164483 970788328 193827407 372924226 46957658 148556339 230735214 246943401 423869307 51495221 102337457 941205549 85489279 696043715 89761383 943560269 927142455 672903640 940955912 662543389 332269104 101966454 796420670 116646023 166795189 728728444 160206786 257771496 248990207 502802971 248140350 347454234 858101588 3736561 486199000 919433217 846528777 765092824 239962815 611994410 276627044 771924947 595690573 933158575 408216923 99073916 751284695 209075597 987312268 518632417 868088420 213712347 356802077 934625586 549436212 897896025 951989470 662115379 131044719 29875487 802288841 564677939 371796262 460255323 153055395 512217811 949117351 914957599 321594824 361920530 327651233 655058603 902810738 883064464 768522875 178284324 379586357 34906154 281145703 212546441 994551803 873786262 767727635 347842378 226330866 406628980 193108326 10729285 604795962 222440508 453036382 717719582 54242106 986196731 223902663 418550483 808795156 755502382 400939323 363488035 579293932 523159904 356978075 728986488 393183453 310398207 12091450 304278470 592818095 217566214 394929063 423439241 759921392 775406641 717927689 592283648 897423516 734708859 472641045 272572185 385384846 659678570 553692984 895242469 170640243 341310882 577794994 933487780 616069597 680533217 710742549 343949526 659845099 764513989 860566481 345178329 230723132 662359533 104988902 836895472 446757590 668400853 53732530 384858225 846487420 656138242 656838697 77195974 454660165 649750906 224935171 667493920 616707146 838743847 113943125 701609100 292304753 553448501 732224918 213131463 933305372 872385978 91700059 524661162 3275426 187092664 207057381 384944596 920869281 873426487 760358782 515424069 343123754 494864715 271498969 564165765 388420353 227110592 914412280 875438077 923988003 476462703 567259421 663096630 892669154 968730287 909182425 260178525 659489822 842124277 11466354 2896727 902793894 346722565 784757933 221571887 142735626 111340915 166350370 169735699 461962797 257921795 912534563 19461350 83451173 211473508 955527623 842490315 141883819 597141004 651436661 235702902 537409679 879742030 731085139 155856544 276567001 753662652 746739256 379508280 623487892 599985946 859833282 804460378 372820289 728277826 749288120 733747336 313998897 63684451 564672953 932408883 911569430 237542160 587010205 58557055 14798298 396270200 578493623 672603673 878041814 324065321 123027164 263570899 30357868 765131369 303072180 239062286 900620758 948298312 360133241 151097925 132877965 427015150 475391237 938333224 27892980 228606056 129385153 750757935 670576984 769273339 470881452 674022693 879643313 766787229 572183222 661451325 98635264 755634946 111436847 6652715 291905993 207919437 908729094 997767183 963514382 171387381 142009363 855029049 989041603 469923351 545792048 456925616 52969347 456171875 435992180 907401586 525505805 96805450 94920694 347278258 276455247 108649043 961627421 422927112 289196301 15234865 76725099 21303675 80652292 711544531 459656005 638552506 895129167 691657748 549563626 463691051 577786959 366597514 260470294 721192707 843854044 725799716 445841986 86745891 317291219 129228862 693069287 54277259 404956717 533979435 355427607 541905300 942232024 489315463 104801066 936749643 359148935 363779764 591802770 275542332 646281816 323900924 725753667 889769810 26984641 390026660 60779851 20778636 828760744 627818399 535460159 935537598 180162644 894263466 798715693 480854379 270216227 984014370 453706584 173281667 630759926 196731759 213747228 580180754 700626407 556601504 102207324 178020100 253185754 570432399 920097917 728034196 729808936 264236725 934283080 234343834 7077736 129517044 273411909 441822502 571956221 119683018 124627334 909478259 91019693 370045078 29583039 310069539 533440725 820319649 380272644 33250125 402174409 801984936 280270593 120287527 835646380 447435846 805741087 966242032 799592107 964094768 413479956 277692668 936607720 964663428 606854207 561693521 385469934 857485135 852640847 436633257 212388228 214084522 211738710 223667068 921034169 493306054 987720409 543485898 794283420 456765681 868363567 494820705 288366874 630144693 275524938 894390295 879286188 622285798 663898064 397770395 357717315 134896529 547589321 59866942 609472092 223969815 703402551 66057757 811996591 498663664 681945966 664433114 677374193 3047705 887212541 42611453 960789983 104278462 141459460 146703386 1230231 625652680 603603192 813467450 741800719 412961826 795360272 384458784 923516649 587952292 470153694 407114405 358006303 18919579 411700035 958518394 407979700 321194171 965356759 394310280 859716505 531386679 401936745 672086541 721834573 669055819 273029084 42474491 415699736 743944253 112124152 743523311 956419929 35452144 985198505 105349782 587083220 303404674 604228106 174193490 716028540 974519354 620396088 371759812 78349349 444876942 223582915 786353109 7698747 637134583 50613959 689073433 890419363 241864190 724532013 479110133 726076300 369352156 725718568 100865091 87819414 977885894 25737174 684493231 994179881 277434476 85897531 270616712 561281250 34048212 101168984 926091525 735273853 66578170 269212227 473890766 484091627 135499126 487184431 310056630 812725647 63532534 532467631 406830315 125285168 28488619 162113074 518355892 522637574 457111959 524776396 199106048 632157902 117339955 495611034 318893014 869300755 932799585 571965452 492218142 477150320 613252784 207018580 303487894 660717760 487484421 775264750 710829250 863279381 592093775 38087237 674754505 350695741 303640607 359576851 652173329 766739490 627353614 728991755 182027188 992870084 781833945 592027506 501397866 195996734 849946574 122677848 41685585 200154551 138388944 234193717 79403996 575616167 818795146 586108221 599565203 429523346 103861251 491483550 994720110 189390178 38947859 661940761 808900467 617952419 63276823 789818342 520172612 523850530 888394909 746624405 220801989 365212077 565310088 623245572 940795804 329564530 921237307 209287362 501615576 80495137 732738403 278206372 532529588 592913305 801229193 540180074 779221964 251946703 451377598 932211999 510744149 89834575 363838764 666834372 582751399 73603187 8762287 715536946 42332836 20086557 837394503 692054064 889104708 780397315 104309651 883190600 627509933 227532902 523356959 635188063 164809325 458642133 822381237 869582229 671018752 317019471 609315824 492147992 127595498 981298288 903205025 923933703 958408424 973567749 382533969 82935302 208258028 156703118 330319341 678010589 624688276 306100005 620835991 458955021 269976805 185513913 850681413 283941478 895878027 69359679 371386509 429019644 490020986 76556360 746995622 748483102 397845290 455623660 331821332 577031419 710643573 315087081 385540425 22464704 640917051 28683656 2975298 296867139 607764601 621157321 816593543 461254091 788127207 393705121 885291524 460859894 265943749 872511026 5726619 737268822 664429492 811339748 627744477 462795053 559711552 48178672 39314946 842920563 679521028 750676384 200023334 772212735 478163204 783316257 872593490 748332322 218086276 981390290 519891724 283351846 483273257 690936729 228145685 184375231 130941019 986974967 282443590 696168541 116818683 832437699 870823589 836886058 492290385 62226683 323910303 156805124 791939999 350639641 659861660 545316814 135393508 61137506 96197072 734669485 245011232 763698481 467193317 241278378 721184783 493728940 122842038 608841041 668666080 762139845 205582344 434122606 612572610 679592919 847155484 663837525 252161444 564942871 223768573 377553416 400548720 755459844 217352818 571319362 141310851 811002271 759001521 745800440 254520402 734409351 920503205 548562510 404762386 605637735 838749755 455520610 518460267 903836968 47119180 783752319 244051302 213039460 952433371 608771735 447847848 234502996 344999251 567577793 55162276 888494097 22532408 368864264 715016915 348850430 17915843 146070098 415220152 954093343 702581514 552558 476023834 999393839 934740367 540650626 596055313 61170240 487445157 458097807 615236972 567310379 552098202 117975525 627345466 785435455 412318118 53538184 526294474 135307096 631130609 321407175 501377885 828221155 779331506 228398010 798121559 702718047 256488325 215592164 364772262 141669732 650477726 448987065 530556017 540697514 940227930 894961668 271205082 741935718 214572702 48917294 392066732 512030247 329183623 910666481 704438513 67625953 83324697 258589713 463008269 899923215 797502580 270394749 865803057 399639091 920809748 686688042 90488528 870461040 543773618 61545366 305235060 967617564 195771661 441558487 45302245 877035596 562005021 739125149 416494515 547550817 660544803 976534614 165395092 439702400 82628325 295248927 731000660 7890393 703765112 838480272 550638459 385747066 645362742 374598501 214404167 154116766 266498874 131637147 124811047 12647367 691026033 525257938 211442643 629369720 33194022 646172597 920833872 682126328 148540201 802018085 240585542 855814164 415646566 39384252 987535210 105861725 691083449 175594504 656029625 541577472 483767684 414414246 848448842 413925723 235863890 923819061 667129767 269875275 762542208 936525538 725165397 177988897 424879660 462030080 542207962 451990434 842782066 968554663 334053460 17514654 445567004 479470880 950475048 364093946 39016624 944229274 569920700 214545964 749988953 163850908 629905542 504106893 267351059 998073331 96352982 979166738 780641185 127589636 985511508 330483981 365014243 6236654 846524409 430099686 760072724 258508741 146630891 516618012 90032488 240383571 160840747 979652649 625660531 600009281 107052481 481090287 371930040 132806289 573707942 787324872 944635799 825111954 193195690 729735134 92372510 709999376 565969487 343958555 613369331 41909409 893579801 148419170 286835988 418817781 119748795 875565797 860959962 253128609 467141568 452093247 409476377 720173504 259653142 864363859 838103788 620513729 615936635 649519239 568487990 403610434 219434791 442330668 435214804 700923004 407704555 58007542 846041813 762764557 254752340 710158203 820266646 322702873 89837653 48144594 815063735 64625022 277302933 831628686 857728162 941256188 15527479 34091442 968859709 838606503 997748900 349789068 105246632 865056148 47217660 751580318 890327205 666077577 759512313 273475349 872271583 231908002 769476710 184120451 206415637 684947369 775907616 191069005 935358659 204441611 304756090 821596897 864735503 969840827 499567138 596110125 111034761 526499514 314113966 801505363 953081760 988530743 384761259 76693766 734100232 764523054 524101959 276556088 58311571 6265964 677676699 984922185 109519138 97719465 132170542 811304303 847874327 408070836 47519349 179043760 996190999 631108977 553688159 597774578 873112650 224664151 952032732 952834116 511316285 299119640 497635144 613767035 933330239 506069746 58220701 484132792 950409269 164809462 721997758 758847880 393891188 715858361 934783049 230972298 403187377 741470136 662939855 240607849 598811119 472039919 291108738 456030865 513359203 79282771 54637311 649595472 593941569 503306606 230395426 49442629 7242660 270669076 772073960 551115633 601097538 29579039 830043121 420914506 422371109 257057327 604351652 383397800 550831774 331240657 347757585 454770127 924360921 205234206 425030651 106465849 258790840 955472354 225334905 53828295 50583677 340976196 605697284 326242856 132898528 926973191 958493043 396017041 694268068 813247290 309975160 36472062 912825911 443674423 701477674 929066617 147758783 612674998 601406057 468291352 274541105 115545869 624589443 582110363 851169218 996854573 579318884 154012178 250714330 260737657 54363695 815609886 762559465 44404138 254546193 248705314 911881394 492956429 537659765 803979821 285725264 503270123 693083151 339223413 308980490 894792238 334662937 395883720 15201500 659031678 491923416 83626605 449973388 390303152 385840038 689890286 87428278 837627901 36865642 531043748 639794444 502254351 750453567 10787544 733003470 854317514 327243136 250811491 699365286 222456132 322526307 746115000 3212788 500898017 168292867 434401294 574945270 480133981 668046789 347129045 399534676 862581076 398042267 905345781 200814151 439483292 868446618 502861367 214031712 51099622 734422828 220689929 235791553 151598332 289648194 870209172 457242687 911003336 172148150 527703501 144726062 628199360 149932930 687001381 108632354 675633103 52814743 126355420 20373916 660830260 969130718 568675883 909647793 281445280 511798586 220378755 357199429 948100388 805727499 107804625 569423661 634693830 845803577 249692171 753618742 952014542 676787112 638827138 660710655 63009129 949510961 198577584 817685494 595336774 834263544 416955164 21815849 450032935 582423838 920273505 995792000 622024066 461483278 879802711 314954687 734781215 741999143 748092220 894922207 520147148 351358290 16927008 947325693 907573651 703835958 209968669 138248734 234276514 378159224 48247792 309668771 356681787 522497854 129540200 117948890 867894626 10254177 985043332 410344829 786047801 618902250 999824082 121611788 181253486 251765054 909888376 16526411 341821540 372528962 546805167 106462438 850493989 179214503 931460437 971148180 868472302 751599681 463617609 951217214 940171556 690625797 201255204 891164882 622698859 763052903 443794736 118919444 589904123 789214273 9578141 726221737 661157006 317648855 282083443 322426312 479663080 984871694 194462698 197341024 640778327 770467750 482740415 272735213 952810626 950335372 308355329 247880706 677901942 139159265 717891721 759313305 447975618 806155534 810316003 344629227 443927193 920242736 70858292 40258333 274229036 993568160 582413638 711900750 580528540 34760123 876241527 1198530 661032785 957407503 944296944 312298564 692718997 107028472 593341308 426559262 937191774 816837256 187423457 815651718 349665917 206200417 905853860 168898441 652314256 930416014 443088942 744310552 872432636 104840000 91018178 785323361 107885145 771871672 393390036 236571839 801607900 3062866 530580267 801859103 1642417 291432592 562545073 887399818 635701288 653001506 799473937 89806026 663039264 664313824 453874428 183488103 100040646 798251689 240599234 344481544 724884986 370714723 281811785 119010684 940087276 459425709 264542608 870229906 406135831 504189030 964833965 358547680 879393550 206006797 522653862 679542750 142393625 524119110 158693342 789429278 200570657 453074788 843880810 477115712 875967862 756542627 349468744 655129755 556831866 76704212 435290259 833289721 827270576 191403825 539947436 453484561 506922061 444188128 96118154 899993371 322575626 468624797 519201992 566321428 476944001 63236458 463508090 3085680 24289207 92018743 323454358 600045619 467983888 67953194 246435410 17756150 597638721 576257460 546452997 556964814 591723893 268191039 52788382 28342524 83444850 73514558 693800863 211073945 303649992 832463349 3999104 714525785 661733372 402384835 894521528 941032713 873046392 402791696 24596867 148400322 798047163 750754022 327697455 460051386 367261733 267167527 546002139 641482426 885977372 494396989 418638801 794721216 840703634 279318753 983207631 873035601 454834154 651829648 661049457 532410757 895334166 966082508 504969624 450078408 986588292 915394237 957908086 346152819 938237860 642518998 765004615 950659457 222050748 182635840 125614601 798314827 369516092 597277340 937046632 372065437 140318876 269113236 293111945 189567195 263955407 725669875 163602146 247582905 777490856 139912376 892857372 924405556 72958824 465036095 903876919 286182832 752595544 777928791 189494876 491589979 689896198 995399656 63396462 469335971 202569197 659545397 893274666 944835170 779244213 248876056 488060346 674482866 609016330 474092692 383355810 339635389 294358905 586920874 309149266 115898947 188833140 234763733 148818882 726928108 364376443 604361002 341218351 564949646 213815064 486908883 790810787 819273695 882555614 78741251 127400356 793819376 195529208 707915880 942271665 737403872 934114653 952001975 717090211 625577879 659978348 558257153 225400397 169343234 120491929 510269953 341240315 511326152 521571494 513024756 346190054 731073641 454104932 623481153 403854195 686891618 952967366 926487023 260707065 387944826 492333098 583840760 8635124 71084088 393844971 320820534 973303569 777964187 965132595 301887552 52216632 188495037 648701680 592115057 708391296 195652628 868530381 140990050 666510205 60093134 486904944 182470868 533414142 615559989 751393727 806370182 564035198 805418020 658826719 656182107 356821877 127401874 247674697 83399471 339242945 156400514 418343275 413544279 287602772 323187080 128119042 436895864 938161989 748918454 64064892 732104202 107164225 301459929 90396084 880476769 761585132 822710714 115994586 945103422 181667765 140768056 625506697 971045140 975648268 43473933 85174334 161592168 429060276 706931264 24054475 968227345 625443383 366000554 695833415 56517736 139339415 630529898 17302921 69047320 703860787 343848600 518336996 793683600 863598139 118387380 999259020 315856209 106906561 410370537 970595125 242358841 921682862 388193616 922968467 355235780 663948624 252971910 675116306 917163076 948239081 892610585 222199808 917913332 224279593 340307561 978334457 656293788 647606213 415286320 22537687 699114203 409565198 744760233 586903751 637832146 59303680 20252883 574063905 684883753 604701530 380374167 195144500 751053348 895078743 839846240 996924134 43831043 356935795 307359746 696527530 263824636 404758091 506613527 483860822 101772144 188643355 826917348 199085930 288477995 841666529 700251768 262462569 847118728 907397758 759354041 755615518 965194432 810625099 187542666 174425513 567495945 908739475 701618110 135767099 81774821 233421418 609909866 223924046 201792757 817076828 502484290 965278658 279607551 195709520 406790844 999764718 520858249 129867062 152074041 888198788 404770302 311420321 91034534 225289533 986359449 475105727 410827623 23495033 329724615 98674573 422470747 669415647 846478338 67445712 982317143 145425931 663001868 128935706 63539103 717460350 907597697 585498820 354142101 20655558 235047972 218978381 38298146 915767458 791347212 488793718 411310584 69865362 195621259 829910821 656560836 647886745 710314924 798783817 849018071 852974514 176119589 902178021 21260888 803801961 120006228 409339335 409101595 476437701 409287257 973837529 880725302 728746198 382253659 110793858 12294032 199574644 361657061 157865242 739610169 45635053 966802192 800011133 380187193 255713553 14280805 459620649 476785396 463621876 164707272 833481237 619283762 430249244 169270311 63214710 838570203 775678750 653625982 233713854 640688840 427035017 925147791 515358847 482592651 273500988 463303381 550894468 347867197 616861497 948500770 650070440 391793635 363279406 556909842 507598301 800591695 764417706 434273946 953278573 70421805 482757188 179340687 689574417 423725239 974614451 282787396 965420970 970986870 218184309 736773346 420476148 882716226 924045753 257498195 841552134 187562273 219065672 552008115 127993832 558805970 894764288 131611678 635333664 283217362 81073770 713149467 373268276 524052484 991463341 273438469 987211918 106691438 331234168 398454555 259321523 35687060 949637466 248294782 338364385 480290742 448854362 307128305 864790181 321459349 25281205 746296491 155769129 35651023 732125163 911940404 416702735 129800925 229550368 841046445 416632699 494479950 649910509 715428648 412565183 710704231 543944331 235699536 101179455 282239045 467030555 795521066 385125660 82570754 218962470 179535232 667620640 474510229 324378558 545671810 361513447 187736254 148789547 510083194 749651026 312101795 633904543 146528117 989499842 402998531 800639082 895119541 665771916 850584428 227542094 33557432 291515938 247451994 872115169 867033324 188233893 554891643 754684227 82602215 759305839 721488298 79756166 651865182 421096766 401161057 81307108 860366072 499051452 139150849 417623209 11276273 759508230 709080552 14588731 246703022 777268108 956326629 885946702 621748681 167275619 675694462 87602411 161899961 459496739 409654513 368540541 195431921 777589763 289771886 199256129 875870543 674532779 621005726 533367475 653630860 912245692 862859851 951731767 957050856 64137915 923710880 512694890 293541827 696346799 634677623 935822135 744570135 655717970 440131155 476195184 703985572 690059264 530733947 63661591 518302836 798712393 43663124 791249804 593414305 137828434 836821464 482729289 959398087 276664398 230054086 628758198 184478628 954841054 485783806 810274450 151802333 395609922 672397320 481100191 429957632 849563256 834357418 227002356 333597966 13277564 881636102 333038224 61411334 732569704 607073055 849177892 237703450 421813336 38435121 177018637 132539341 348135985 694053295 946288387 986695156 184973130 934151212 385581736 651276083 650148014 407653866 574545575 810256150 283176129 925294674 217542462 831343727 393730254 177473742 735663203 825059134 438065474 250554317 728940768 834897874 936499323 845880503 400071642 557387643 200631772 872462956 516882101 750673180 522297954 904904264 245337510 495699810 626959972 401338586 610178176 325260796 94928121 462104851 724722567 35251055 801243824 820769949 930814563 597234393 533615275 716770624 642549603 982165397 787113946 220793307 425368800 464324609 543531751 799497508 30785658 50380721 161463865 160429818 701952880 875071936 567072807 295632134 496837081 506666352 658837819 546520420 986632709 664385902 166252956 221140005 303838578 618295225 665548702 85294403 511391825 838392148 960038935 571619090 482344315 310673737 371568327 581364510 824681725 733447319 783171780 451696610 538084459 101222885 751743290 637537770 409558072 678735279 169944195 773251916 186959639 989035800 662192820 484270168 670896386 802829242 745504712 846073244 45920501 406970651 286470655 950488957 970075522 670194915 974454112 325437600 322699064 69221940 523872778 500934102 584245908 167148103 720503783 903712898 814054104 399835840 384088651 108199926 305926771 353935402 915471711 98549075 88847729 213103594 933355093 290026605 385191201 852946743 928932930 835848685 261843703 987798080 286131797 879757166 903036538 181275510 427241049 201892284 633404752 872984512 567884348 440590856 729653769 863964628 691226010 418707580 433611715 465162767 869399532 234035136 91454544 638715592 87672214 24818279 329741401 139532028 613170643 708751671 306008154 654366433 954032785 905354536 716878182 824621191 301845115 767078612 843534931 247972129 695962765 720290793 624051479 971748641 783065395 83022050 435694185 455507880 713786991 751123946 768840140 290548184 369011389 331891915 733529782 672358292 721397007 192368840 558205487 308944464 145854494 820023405 705754413 367062884 72173831 286948110 4058057 541253790 395959454 210455438 484017669 784107866 80966465 703099410 906026286 525918112 253685769 477708339 382739569 25749106 201157444 413467898 517731444 696652936 74194405 142131143 771365843 21470374 704174110 248049121 586313534 446946441 62270467 928881738 201378411 64776652 377887580 96539515 916961151 403719514 732988330 138037632 119939435 48396388 517829657 872390887 54104390 481608418 780794677 256058149 907428288 259693367 534633430 253954186 306693055 800191206 302803141 134429163 734186720 320428613 988413041 924680574 149442389 438973238 215393203 773980624 417136713 431369438 527312790 845558309 267195502 903302320 335258074 605282897 877455250 509571888 75147778 374604148 618960905 631805360 407066555 794069275 159979562 761180869 303244519 43856679 845110515 464894019 429400826 578216636 381715075 396815556 355349513 165116411 217763833 109455377 92808063 590239927 524320033 112271998 222001946 496980395 976534895 307437338 82735641 488125934 299713140 306053960 492275045 877194337 682520865 749764375 995392382 433685929 439585959 338321524 163457248 260834562 829004707 411796842 419087209 251494272 153855147 210529691 92724168 717235336 750247688 346939121 908376049 977744357 100513050 945305161 164023215 338005257 594870856 482333661 954186623 288038390 995821749 878821840 510861924 897579790 231971260 832428662 468617840 437630356 225650211 172926619 119178891 610378793 738857513 944650555 974924885 942293927 750345576 954615121 375252318 180206597 389161915 927172301 428010178 810567555 307334103 664066684 304712297 594085015 945293761 846174887 133183689 919218526 636587101 960461188 77115072 672036594 984678589 663920852 747591175 319809110 318852347 347534446 540661133 6132101 248956199 988018374 741620037 870907050 64814277 183022424 505285843 161656058 126360447 198935990 638154578 581471508 230901137 908952070 692528895 636908974 287854193 606165785 966819211 299229677 124890813 891993165 520209786 662868465 975731661 297563430 452543239 785163348 531513388 415634609 380550807 556414888 762587311 435643801 250782080 409831109 183047329 58484023 265693518 750194269 403875873 889108351 640752995 860082921 484428647 645976236 490810677 339203740 915698488 514302158 460856555 76525237 319800642 585800370 52262481 868004223 854842494 468440150 719672030 55485494 668023560 982633531 457710238 558906822 304640975 992412244 937645697 225663560 88523607 526056728 681779348 122493542 201766875 10252553 458725615 164764510 438294303 805128005 600358778 649679298 736741307 89233920 631088253 662371322 385465149 526920508 592043434 955296036 897014070 760667786 144983705 443067371 790708221 360850604 604066495 65728986 980557985 897881440 209204528 753169990 108293218 801560220 745315795 283853838 256270031 855472671 222238852 30096380 228445218 923499489 25510367 561970325 926668892 963683187 485574181 174642270 205765717 722541519 791722382 916666514 545761812 914792496 613077996 676997842 564451027 61325164 677759926 688633910 52201064 195651373 845588251 23444383 178742225 777036297 158649099 962101043 767530334 588924756 462125107 555331681 391954488 930117862 515513623 775545411 83405855 892886446 710376225 896949519 565307143 641187364 11516653 280106113 854459302 555573550 749262222 20643348 319399753 696472425 682370410 226470279 455989941 872043324 967728115 233840041 675784803 397000838 417688894 206007539 577665063 883533337 592197227 469354618 569590198 401679800 475411007 707591586 862441263 164071664 674356395 156611737 161097325 750454119 233214707 140782669 278843700 319769084 776324241 425934571 774133383 351740307 120089658 719890093 277514215 822724145 811138824 73093640 604688248 128343636 676393722 587028314 110378885 751397338 245453804 666019675 881302109 693854789 591149558 368858343 982254022 660771969 598473518 289889366 227035475 78405898 453288511 527135242 262639530 184561326 941694180 322994073 903393707 273563850 815869169 741195066 476342593 817736583 751741747 683838761 361856478 100913766 833241676 334920645 138608185 561632415 182846261 560282550 722811043 146117920 606018599 747169045 15325787 45944726 142735975 766845799 842154493 448652242 259067827 305101112 911808323 140415156 269790996 550156170 947635777 863705687 93785373 764041823 568747104 718788994 927078114 588056809 856398183 130377006 406806535 384194148 645855443 546517999 19621703 980682054 236069149 768218753 450824276 211480345 685540411 556416698 100564831 195874241 37020764 121013276 137107221 448068933 327242592 780504623 382390970 244065225 247660866 747044210 806083911 993019598 208462655 913605356 145616160 77271211 813962188 139817006 726821523 998043651 749128954 226825490 297543897 62327764 579540245 52649733 659807771 973019419 659132585 339688384 30955231 995098449 796253951 377166168 213933247 183929388 243226508 931183819 325405422 392145454 686140023 815676245 264850091 847434440 988950976 943972455 301859346 174164462 904568998 783705599 380075563 354523969 937027658 998824703 330147457 320109783 637917280 225558348 872125239 805872838 567671573 394657175 415581657 998940 218992869 149186018 909211520 953531941 378466975 588421974 416260055 122372787 618141081 188700978 291645900 925396286 103930457 310631340 545592636 741507182 569875914 766514300 290857417 886108638 613348917 353995418 250669567 645283858 567404725 887409557 938207840 49637400 757098364 766091295 382016511 620692984 976492160 128539728 258408355 704971130 479544946 373937992 815457970 457495972 625725473 961407713 317779792 253522248 255490492 413455229 226505229 138935670 733004220 618627654 204160760 684854608 594650874 668524400 489932038 596088348 759737242 270034583 191787809 686377930 780119289 580122097 412990090 976504794 653917745 888306608 88003977 571138248 193254394 447701149 427819602 882067358 783182444 804747485 360477445 792182646 781547208 620483196 773703121 660806376 638309439 399597344 412505599 416730711 80397927 582030470 218558469 170797434 921422459 891026890 445676709 520728384 416267455 110829894 12959152 369718794 47819670 194900712 189534853 800721361 364098456 792017468 806947562 924381640 398408025 68282264 916273854 979175746 111785018 349923715 837837862 651228712 226067203 980086077 33016387 558799371 389958989 55956165 968834087 229854252 847090198 566326003 694713299 55845329 742218985 873062362 580730977 963671528 884215094 71687596 266471562 172654537 688498739 892083815 481072645 604045674 517187164 944192561 71084842 106815898 66294487 992568615 922126272 643828011 296456881 36602898 200407210 817752797 767730486 920613319 847334362 301994892 425874041 884814318 130068308 723683630 91390375 876789799 559319070 747049348 218306034 649880415 460770366 336392712 789203806 803168358 120614463 941981590 981813579 296554108 234018057 499332650 902076654 153989896 103441417 130736489 385675331 797784756 951924224 254000244 871451318 227398668 496044503 804995476 984412 558298194 641362675 905525555 746228876 736121088 2736391 519601928 658848115 935684755 351438093 991247152 270489521 698973631 691485973 925122026 240138478 971146030 259837718 416642300 289767795 145153667 585039462 86152054 856291316 431115600 940436958 733966987 240605682 168105436 856168825 332126090 750419567 952837090 481538402 256021781 326434097 884439222 453361237 733348244 489543874 448566976 81293945 749282725 906056518 778300797 339048149 582416924 986588559 417275464 22154899 93792378 214890593 385501099 846984708 325929009 938535039 334799787 456360402 226153003 386924528 947570183 212285687 105939668 643175461 80308724 451494755 765911757 679193727 374865539 13518258 755970283 250102613 169760064 626601905 389180454 708411649 112174957 204282403 599313301 125294962 759237034 525999808 889293244 708203848 921583503 628970012 694633322 598922496 946735745 407927362 529149028 648263844 283141697 308011338 378073824 305652525 327770600 983872421 288340848 562785616 109769028 973619592 785544360 581169019 994245700 494088365 36286088 401889530 27246713 317448819 768728027 705150154 589111370 748247646 806935893 439512351 873231587 369378630 12131426 47908943 452979339 852790981 578275341 99631436 90327207 134830706 522042001 17605667 409816410 368739571 955516160 750025146 558481611 240532677 980307637 717454301 502291634 907738376 387759031 996651888 764936782 165228303 66993122 284318552 612739732 144629001 446970869 690715308 919937179 16178195 226868656 510900382 620947687 928553631 215321531 720302575 136340274 343867906 171522944 850891634 939652409 335657399 46351370 889449165 6669860 397131497 263449787 86717236 460583246 826457985 739246250 841799029 283063750 57311998 517005766 105508108 683490447 347416851 650527985 165653944 580517053 7613342 493444744 861266632 380071820 381773780 318687952 735604963 911579998 649743744 497564795 514873877 206796334 715776787 841166496 214360382 327163165 827626048 637463879 661222364 530195465 52148389 259847143 552738038 940994485 96149473 809470992 723806319 230727348 113317446 356181393 565939425 771389216 181253809 354728287 40632858 208342251 564789437 47521131 557276948 391542079 286736463 632359040 725923871 150289608 596366969 780119437 147713230 25051325 583823136 476772242 903297788 546260144 191530096 666411136 512824711 95540674 63958549 307134185 506268510 176062117 48465149 384884054 712473946 270582209 294417651 140858125 137146388 163374858 30520097 646744408 519557102 605888825 434982430 258244015 27768688 609794522 673709000 136560280 738934670 90138225 489992353 209731233 817066721 525685152 256273198 902853673 15183665 820805167 538507189 744969274 994262387 373693123 290073913 105392158 988147719 715815104 343827479 84394841 270202934 949989354 677628301 920735335 504711354 832183192 429960937 194573556 31634059 529898926 90256813 990879463 230618342 754015116 124691991 436979471 88039283 406680679 542554152 135256475 432113107 543695585 670579271 2312974 394424296 755241129 244705922 717493906 920166394 604676196 520310969 250230479 123692824 219079328 620992612 296504178 456679863 443593054 236534055 670947091 454706512 397353085 211404566 893951981 353183593 700737857 463128861 576837351 580433543 977678230 635351853 656581030 967827872 529250587 756828546 767323341 110342731 805684160 511219146 22731197 311676158 696061596 345635349 418512710 803691202 294288493 751538403 791758907 593105638 217173747 615304957 402393640 807092093 631555781 267031705 26601664 297792157 438485419 142214294 288936175 27829525 415174805 908732812 887241861 424225906 751828114 558772855 674569640 165410997 682865690 939962432 220606258 214746417 486293836 920094956 762234538 233540968 592708515 962110156 295821554 466475698 635415338 492639583 584891081 658628885 538204458 316443956 170999061 94603832 214440381 785166378 926098271 558356076 86445616 533138347 498599183 29167036 329879917 321552373 236821526 577869427 841343735 292812339 794896879 349555821 604066545 505978593 9184854 548346247 980144873 720107353 368136958 633913190 353631782 14836138 701126055 87943275 677169138 882608337 598766760 253142415 483733011 20586643 709222382 120276352 271425830 860355713 390633792 138695079 390814114 306491955 545744824 635956192 333914182 34416063 172158649 612149521 128063360 960646878 653371291 976590741 755563403 452422091 393416159 275806426 818405685 840683026 476202724 234106518 618081149 603749833 630603448 900354070 338604191 738220714 75091862 451927124 42726959 162866082 491830222 949098268 383768835 224653270 11291871 506225862 706864720 365938865 950039093 896168974 238250947 213396193 99888653 668324139 417368510 253626349 788353024 234402 228041758 674105235 700425012 26077590 864327483 195002163 630936714 594934381 276109463 105573517 34698396 56915904 167447452 552281927 705787326 50167715 598344528 305045147 796445238 490076224 487874550 526012907 453365599 353988418 610874459 94027965 470579694 80455200 250344768 650891112 4157420 321495604 576106696 973483457 466655093 597446916 334885970 33179654 178724082 287715937 446853303 176422143 646352265 448797325 156351618 312922735 643492403 739791383 546602492 566152072 626981257 691415444 712057112 780609536 511134940 771097052 917352880 346145046 806025563 609500291 676759332 263496508 359885605 18961203 741912576 739941129 258242909 681067192 590057315 326496842 639800172 62655502 513676726 722794018 270433729 871865393 473257220 867101737 903228625 179732493 606509755 729067170 996236053 975291842 20809947 351695736 157672098 264243122 299325755 459223446 121988812 348427038 521479789 813634461 278733647 72220228 874408651 606483758 950562798 599206644 825835220 317017614 709310293 28917351 209930710 290151073 294138993 486545043 468956463 52765563 293598775 76068015 12846863 19115575 969443664 366641613 241282296 20404692 842863811 16521598 464961631 971895192 892370203 213959435 428844045 823273830 477918440 78041615 609031885 64164653 356365004 268403919 180031486 682295560 425052186 981648490 29112506 915169711 619965892 131799102 798554245 207804781 477291618 156462011 151389734 916723270 822063872 232248037 902303713 379785202 898679166 490947036 122084679 933157195 524620117 333356968 948439818 820066644 841419842 959726373 453571350 882232387 333657577 149231143 569119602 902865201 345680752 860457671 810881992 378044053 374835872 516775517 835131068 986030635 285587338 252750139 971495897 99953197 451598585 778803620 395134588 852144813 151624591 670534556 811529506 534687014 670122562 316958829 442010283 120808270 160129802 74869247 789238558 917926321 768263559 794493743 347928698 127941662 318738432 863596066 263377520 174989937 638210637 892720962 834323388 46498737 441243643 572099644 926502662 993981080 692053357 925037276 346377570 672184438 667237112 99366400 904258715 928559983 628967321 385123938 340016861 643469714 862458565 528306420 74258713 11050728 99694454 234762881 264068725 122562935 388222520 483962339 322108982 369208706 555578872 50028927 621648069 906336356 998073229 456354541 160339083 194890912 145950693 24322636 278210624 665763087 10015475 317790788 447844415 432200874 979286312 549975750 136448887 522164616 184880180 795061292 662048193 500555900 266190049 732192764 284902904 731488154 158995451 542404912 943848275 531997320 252559145 972516219 651859155 40300293 656666211 989224814 701194675 679045226 208906398 411695199 330512717 939578243 921226362 659687058 736063734 895047845 381808684 191330066 823530180 547514168 188446239 192032052 271893477 701476844 409533219 641213051 816797403 461352631 67994550 684791809 613175578 190932099 230936069 673942461 591414234 727883082 677532405 80987960 890395894 768567108 495874880 662804739 509537722 625123336 460892876 427525629 654822434 827369000 448871476 380616835 106438647 727799451 300249145 909076610 410258843 266402737 769951407 440846500 7360236 648957296 28375955 697133841 816090927 471285679 287805883 276143108 197471909 156353168 929593092 203852891 442447708 603387993 788724909 304732924 493566564 173022041 352403984 259409668 856380929 43669143 682411147 365136459 97369756 10456858 535764159 247396302 992924167 933620695 733656858 986368391 904173253 378448107 673964663 547143950 194554774 747169539 728305492 291676784 337815390 599404172 855775766 570037603 914994322 262278647 29288121 781331270 516341848 950595272 632287881 111698623 519473330 14129234 680436492 439925726 791648724 936606693 287795790 964786967 639601255 217541477 94777655 835403235 299604286 655781529 193360738 431209211 377169256 893203876 981442880 783098076 731389363 805241267 740212491 796429201 563089669 200603544 859897767 440949827 684826678 770910264 98108126 723793642 951689634 946497619 455945483 907216166 441764509 257604462 786868951 484263502 807192618 989142401 195317089 248735386 814336332 597519482 257138479 139943249 730838031 720136056 854390330 892755067 529277947 399791851 965304627 226628993 785690803 586417102 255534314 953386424 687288759 390572992 111765642 158664230 767881865 491671049 935896412 845258123 795091105 326239490 46767710 213072212 182706740 348514981 426505767 906573644 951092879 92892592 801601375 439691475 55809793 289661345 673311507 207858294 672851864 972150013 545676150 566222525 960228732 568803145 997018787 263681166 868552689 821514284 824038001 328676797 903113781 996145684 511834781 958760619 371105875 754722647 881356360 892566312 724020045 81664932 942741186 797012376 678593036 165891221 665136518 573886449 518994455 337909528 389080227 623374133 648331179 278929887 306322715 835184769 234214937 431414254 577817288 437553264 80866947 496093404 935203215 832871746 195520993 808716196 995885691 937961739 891323860 421289458 861398619 702321149 571776187 217439029 420078429 892553727 977501625 660406675 113243319 885898561 804066282 267597053 783136917 539643793 597095899 936603187 236838815 519423813 915824700 635983122 516459236 90086061 392366571 160428552 71856054 89555861 430040408 681853382 759178882 135589249 68083920 230100207 201272612 79235409 915097239 982808713 39308419 343967503 252814215 329837613 722879315 915859676 219115004 383896209 304788247 346680744 372926486 269041183 160485031 647244813 791061963 71996989 528013552 735434500 842931824 600424466 829401453 334948330 429759948 131956873 800148713 697409847 611446888 330832408 27779729 606673300 226784608 841878815 602612341 202707908 762976319 112058625 888934093 89615702 965606814 826695408 480745460 964877957 987351820 987941536 788155487 654646014 281456099 341632651 54418997 732312541 105953515 503983606 315145583 761325775 472922469 846567594 508920306 829525745 754388231 222219262 96542387 955491579 521913660 563564319 935983042 670235843 471129690 649704326 326123028 413370861 730813583 265803735 809221559 964346525 538212945 585845518 204023374 669117484 766582041 468305389 126217840 26246195 204881435 801572415 521638044 137789010 760826908 203580176 606339356 562249316 226563999 866844509 108441664 924270009 680285485 946891059 421289001 700648761 146365723 72467578 727684279 432783646 193644279 754952837 766730039 82644396 114191296 862446369 861546573 649206086 752410590 63444058 6907518 840283295 198073995 165196084 396865830 270987411 699028789 83086883 854749950 466922184 468535041 343667158 153803296 823109720 648907530 170347331 697104625 763060080 732611968 112181624 45792694 201989194 506623798 332698612 388531124 263819716 244826524 233886607 47262781 305811634 883631633 70612706 838332527 184803927 668852208 795049039 826024245 862758769 16127016 808069313 984389394 748370940 215311202 387555808 717668599 941323304 353888624 774498138 535392387 798576638 791723939 119065424 320177064 649448479 593452261 162029129 272319190 775443866 905994418 58334898 640244235 565446475 729629038 461012608 40304772 479116643 675398415 78478165 861781835 619273767 530258575 45350654 180071670 675534710 196664233 967523700 691328046 606663105 742183643 560911931 299560425 314099441 936529052 342705935 924838016 283579841 397103967 800488713 872107723 821946333 802539311 384565296 593753008 591202081 422171709 286654968 395267329 352639905 575824637 592922271 430628488 297143152 292068849 935898081 654829395 163834151 432993735 855085269 233562787 418852101 157055330 507370828 913066915 25678063 359015319 265932917 477764604 631387213 683844077 94586747 337638571 149682618 934673645 424933845 44081020 515417018 903173843 894507722 666369728 432641071 501498241 759218539 545008907 290889011 877077546 28159018 722096414 676924451 464972426 983679495 416658035 83061495 263866142 669081783 366214952 555376524 791799372 60946603 519638627 377638871 290314118 172144011 998471036 441664913 564369694 618100317 979667696 468158339 604232159 406738786 293704441 89398499 593013010 249730736 227231244 263235369 837382062 224298082 816844740 234792158 183848645 331612140 860201409 696909336 154789706 23195111 754367422 728531449 383144503 12567413 469280083 374672253 412855941 811660033 927866159 851188118 893786523 30344825 340549043 162043064 889487356 278063143 222359730 223830725 309089690 192706047 295534878 383640953 700501111 417559703 216742220 418081473 590679646 384325177 704833104 320471218 557627453 235987953 981274436 148634452 862131670 381365379 212362854 460733401 476649938 929679466 614652172 236142230 575598597 225576624 630423894 437249185 911965504 167275432 411674638 331850657 736711960 788879201 697817685 630895776 856721562 810949570 706952276 292993457 425846203 845117553 173510378 192791912 20996286 235749621 954430280 927500586 479589375 385371335 252955178 902372098 547248181 500248586 902479432 113491886 306987506 703329626 421253288 101750719 391345794 105764232 338881964 788691437 919249983 656399302 194424170 965188102 280943598 880265160 852686608 262941488 401923515 491822462 677933975 48028438 274573596 70068790 19463363 521794567 537441243 710816442 221293287 939535123 71436363 372883181 57977145 464652381 136871622 619011813 280443495 398020480 447922223 953198165 706520425 346005237 48474198 677516860 136954061 39109494 470298731 920171336 563719374 897032507 532763188 74423261 828660513 383716811 660415508 1486295 963313167 966695694 703672519 792053635 495153586 315848159 911510304 962636400 593791003 572241290 255919795 943053300 200902139 984677495 429116722 162767997 965536615 496237317 287344973 565164813 850100578 660485698 648236667 997205865 127968066 730844131 368566589 206651924 237314718 162314365 795886813 504054890 826128014 246259878 385511220 271458671 357555940 689159212 504655203 962382627 786228197 248375316 36431963 270921844 968037438 905897238 11545702 290940257 967807573 419535305 40238715 131990208 117035621 829593329 410862690 730360635 752820848 654026814 745805757 986066610 773881187 880809291 547686864 994571428 248061970 309754212 440457135 110991103 662650421 161984118 87879621 363910335 951209667 675355540 963702475 348325145 450631851 933322239 846977765 847619647 250216566 679144560 355742220 889078247 404241638 806258305 542217394 972764286 997912965 754546201 669163565 822716462 636830271 951398542 503446970 640378738 531186044 638412497 934079313 194190367 798574898 342323481 177260418 2431977 202699640 255183191 651407338 907971377 161937677 652796999 387808703 832973374 184145700 123632622 824039725 947245150 403825084 984218834 703635588 857028939 505939618 18016931 71638204 430722801 503810199 309308237 447954969 869155889 688130523 494832101 8380466 239786961 672770203 561173653 981815790 258210370 546203391 915603293 973541447 659723294 202821351 164871335 673206568 854000871 298769738 268287581 483254345 372163899 487261338 477480031 116212190 731676476 798862646 237087915 997235367 759083647 703775507 70311548 476350460 424803777 841986560 102995426 198237967 715343197 129072051 245270759 765250440 955260276 927287652 207374859 729641100 538600453 730956608 680994453 873000440 349943859 496956630 652599497 62035424 891252121 619842463 128366342 14191436 61101166 656835741 403728063 180931130 52316103 374131807 761994225 671401927 467484965 428806150 634672993 367364247 566829183 667422897 275967446 344197172 17777341 44399131 211865896 315330346 653488821 261669944 229319740 684646880 715165221 186968347 869855471 812060594 485992736 429590702 351981968 408594111 17086057 410481190 823999445 866748369 780586086 440760631 230096529 939073798 49480527 317732040 209624848 267679747 358451148 935461312 672692964 466493833 554586132 599654380 423510217 492784941 848594765 519723958 683691910 572044651 919372610 476813514 171545274 781248755 349584402 973492362 959652157 277971048 962000561 9210311 10400924 895658560 25203989 930466180 990897012 345066651 934635706 147263257 751174177 740835883 638616004 368517262 675268234 217536605 343376673 275625758 451675895 194824330 528632453 388208586 743287664 94479622 270320209 396131002 691823409 210040740 69773175 721543161 194320809 792299292 131182974 469409766 721221558 98489640 423452711 34347064 659387697 830975358 259556328 693573728 398475733 981357927 552369781 975674717 170339087 300111387 612644225 698420939 973066981 463461309 687301079 401592936 871310965 995227789 547264019 172017378 118767841 738677647 109154241 569191318 397249608 422692882 232870554 136426933 364846147 32330568 480744845 907848608 770126849 180309574 997991486 17377380 884958402 309657254 422719283 650737116 576075765 348317269 87236375 222455045 120331260 906676582 596140102 18243544 295041435 310282862 320118468 298383098 449299402 389765087 994089711 226188562 430317990 197181654 506578942 458431650 449491348 405183784 39990552 519543610 869957368 278533963 499061508 324444379 741546997 740605047 809664522 370169232 977188290 192345898 776057605 492073752 838961597 645890280 533693674 399022282 721217105 715288803 562156304 678093802 559736838 538303271 334400165 810929447 922053242 395011049 512020083 115560386 400378488 842762681 60519528 693522846 257318602 383538286 145233466 668367125 919903049 973027721 556586855 560780309 334647291 465191270 371636073 461734079 277051057 592284845 872178614 808695760 798368828 653927151 27286145 493958849 119724570 265694088 349632331 686965070 501605083 913984591 974508888 352225423 239004376 359868395 410246679 29872838 441202681 594096764 111514724 76720122 326250046 982426950 379537822 436616722 633392997 149549419 546567590 864349904 186841712 989161019 232694065 968463132 454445019 548035828 527014344 873346978 808535033 103646184 680765387 805819243 687161854 873108442 804363931 293320314 11289982 934462256 229315021 125777151 409626663 216712030 849977200 76865583 895155966 959086567 916621983 818522435 605814879 462368351 521474326 96952298 138686979 151878734 725528075 750333585 374056561 133329637 319073377 318524518 460498491 977153502 466425577 715455200 772905705 752847463 984134398 996762842 815096395 272208200 842730788 198935453 150672152 250790323 993205417 904136379 942252601 190606190 277792892 646627053 152104038 134032884 349883360 177777338 744551782 929296842 527217483 105259055 716843253 109820139 121299409 298664958 496010162 737743072 940736043 454969288 689336287 652086666 382778184 765450452 561371768 591088561 811394111 500711550 482780845 84205089 902572296 871852915 97773527 93161137 988692682 626489535 215942544 891233217 634412216 863792092 649415408 945532467 723252114 136209022 147976289 186327751 507495016 936699270 722862844 599837627 577587086 350926888 360426962 433659768 403236838 499881736 818133607 284107567 318286556 259561099 729943204 949683576 417679625 568710515 177105805 633138958 375955186 121177963 652893771 682526979 934604822 165531217 251801099 888831373 837462125 527712269 185001926 700011207 212145746 535741918 525628818 348582429 985209812 741171767 271472544 811858502 830280246 382715535 53871834 385079548 666458405 50011576 432209210 750482102 606960994 112715229 106034189 501536432 200312358 8106234 195484767 893284042 418357403 586908862 150956459 252880366 437100724 67515320 907018407 761027923 476204967 785110394 924392653 45837937 107460180 782079223 705341905 400038659 785209712 18224828 538059250 958555855 346478458 712759764 535985192 82456436 810176214 378702165 270566840 245923727 41082569 289584590 475844861 354150563 451228394 284785173 286650863 186453989 157480491 884771757 727006931 976844817 198532524 311201557 872061325 115069767 913547244 536704619 137420179 205371697 892860510 713830761 138753278 752537557 286357120 736328432 68477264 780516384 502411274 361301765 582214680 276176705 30268779 607786018 937900883 328762725 884041539 425670991 294560240 315156881 346483989 300140858 581335284 183984470 164452897 630587901 388765472 696663640 608363210 931930602 30018447 389030650 903365036 895595411 518427533 455250272 399299561 489280892 380455162 994983530 256554039 496226144 771004684 5543715 616179911 763476475 565607964 512068610 471240262 125644775 627641889 447472494 706739241 399215042 859117471 883337499 207632736 946778934 81405918 55585899 752243666 406065403 355067130 271228818 333228084 759677727 458602940 378458034 310833160 688521611 548182737 735093257 35459075 570842539 907235292 291005740 210074584 91738086 508803064 406103681 263808701 813850415 197407098 517281600 738593080 537563392 433049549 870030536 433423570 227988192 232034102 656019438 262964577 977033519 450405564 600310250 884024183 120733620 880138764 870853720 726590643 183445304 357223150 49543299 810782398 744942754 186191972 282756325 172330942 129964099 300159077 963651070 670790714 512237715 801607146 416566393 717891331 989458916 729576233 907109658 455302402 295302285 306600414 479476803 383520924 511512123 603727162 214451977 644920521 219163812 27584328 484573326 59715273 538409080 378235470 229067219 564726299 448221485 650452864 212613347 934241888 299357373 829655833 766331413 812595706 770887055 561815539 182017251 117813588 383388428 220445032 713745672 519442923 988762981 521276745 921293592 277554610 611551277 176724983 126800338 957588442 899961732 991051879 480634693 571176973 217965715 30478400 863104104 662087968 556238100 511204887 395002631 516646077 848079867 261222249 33833457 458935616 862992982 594508176 274287244 921816150 702438466 654415505 327397112 586210331 432134632 635310746 595700917 227395766 120513801 99197217 21319550 917339180 173169889 273248398 233265298 681882893 856130925 613721690 121127908 52495784 22182486 282095472 35660175 207065038 316164271 629132270 186565919 531696461 317276479 524270528 722160832 640291395 957049132 326401886 615460785 350594300 133925662 845579761 206626001 54290774 447606748 905185158 798817680 432287747 118470445 686829745 297067021 984561070 586065570 461676198 87079273 956690209 798306801 638513639 353922271 896564234 354760301 290624848 89505757 66442044 995365003 296265110 80461564 320652436 635496025 190312154 759712548 540805075 40656834 804938826 589004241 952263676 476621317 862881162 178242254 295090474 883668687 896029897 749828291 515678911 184340217 181400598 522009551 151103524 536718296 179694503 451231704 916147280 16133622 206976661 268446173 490786078 431135446 134173895 152951527 607169175 959310017 545713193 348029007 938475466 50585753 420214371 628649909 171249335 389087338 62846574 791322228 532180450 462684402 954970883 60557613 336319979 338296326 895748867 353883316 146608505 504050253 347530333 500397363 873548716 856387997 758237178 60693984 856409875 468647131 522810289 786818433 764273750 999577808 73954947 986456729 864378446 10406498 167358209 818626941 488266749 269876623 517675232 366998905 93570936 11094282 178220980 52018758 490551828 397565928 441819249 225542559 756318753 170285653 171099019 923126372 208200904 263942544 884298368 812265393 359008423 646781575 918417505 871982099 633663305 761600833 806340099 753914415 733483837 365477583 129257226 94356320 936616347 371555118 885044594 81647072 305676503 288626225 778240896 795375297 434187486 764858818 797901668 960422346 931020105 734351099 642793013 866159236 971608452 802067159 698627087 617823131 237064992 940343028 167369672 156534608 732434300 236901612 515337873 181505224 78862275 177916321 620604610 392587898 942874821 836521967 691697285 679576474 932224215 956657487 797143576 745771308 586450784 719655249 558045811 446622442 38329845 44696385 93919647 579373477 227077446 765982258 782070038 261865582 379205865 579760192 127990820 853805032 817269996 438481637 505952468 872564880 179027797 745442473 937732877 79801184 376685195 792368352 28017549 124803301 270052767 399295403 773604262 638470399 469347628 982085592 790809354 106370539 308712220 230460649 976993823 136648492 472147702 47307052 305058093 533545931 935970775 902670926 719824569 419361408 503830389 891972078 486587094 854308023 503383860 262286119 95692041 652089704 789121339 224441642 653905601 669084478 929918965 610817747 846613521 616472215 240984195 336527261 354802209 768699018 562406756 640378940 813589037 981391730 445266531 82933573 601045152 263898295 597231062 282062820 374060576 66925537 465229432 705696362 318888036 682558075 78614396 300567260 210729318 913059207 536677885 3930579 356145003 16629223 161706807 211949570 589350676 935752760 458783537 276538896 932221610 664416677 597600044 974186656 767346453 551599663 21818965 413056827 916326578 107874683 438346794 509544902 738793516 866661406 820905380 281386203 808450345 746149933 192417818 397974362 600005770 623128106 558065377 121762555 260893590 886522522 446001446 890422509 88645019 180636462 610163357 256590941 808570229 635102787 785792225 617372473 938221075 70466827 288144816 303861898 989323071 257737504 745984236 767007042 996120778 915383052 717375690 990066481 765296282 108924477 913891898 841040912 324055052 106959397 467996280 888685636 332213522 209742916 9951519 79424286 62282401 746929607 665281362 975106295 60623887 649541257 702150612 801152417 900536463 548833689 577662752 642230958 598411417 587514734 280046387 76749866 350490035 289292067 782792023 988887403 318899609 672536532 689380154 956791132 727370235 12477201 504721255 128294160 430594463 675384784 788417530 71141207 857681196 909377517 482697364 633874288 948327152 812817611 200450225 543259081 535568824 333647088 640979476 326655994 638243007 57347895 696571853 332951881 771017884 87270709 164870570 693444040 939684625 257697709 798440921 299022024 265263727 796850149 115108839 987343362 236359144 407858217 1491578 497590848 644561391 607919282 764831089 99770580 910274036 964831825 317321399 931845149 733873196 81997094 378756839 153224952 877959403 956312581 701336130 660412076 688723402 954433932 190292430 20568908 703369608 594135030 995876081 601590506 794483767 478541778 749553428 156720384 477375739 404645225 253046617 150460433 208750922 773827613 314930900 58131987 610341545 470562446 252161827 112794132 402427551 731863670 246048656 339668335 531943090 19351881 783254053 225431254 828635762 91504862 247397397 567403311 585261519 433097244 923976522 186172225 414437155 884248610 483274428 620508514 887239523 468293515 600897385 942422509 538530779 655397516 999938667 284470415 271068880 108652134 7120518 412559680 601524623 637361879 955480013 953891220 568606055 880583664 570938913 737364851 318967867 954260148 233990095 49768264 831850464 170790257 207595045 816937923 294674017 505982085 738430632 578554487 926917798 833696685 655213723 681857122 136382200 853712234 528031453 116109804 479671480 897272285 990591984 940133224 881847319 641861661 829679256 836302206 808929291 956950197 780983488 625030576 178355423 476174743 23627440 52050119 894227845 229165408 1284992 961068867 368014348 588474954 272054516 562984763 319654281 404582223 799062323 482208991 777325705 285192056 304191121 893906824 932376049 652207221 322215857 977954731 468219912 359831476 620518413 22144761 224453664 280261998 843783240 526045339 620756773 777062259 439097531 998808587 156989979 188987258 464002204 228043625 189514218 224115280 60099650 100529357 790357875 503632587 309552976 281300785 70278993 400829881 534496266 300760169 103668831 534422705 980695216 384154688 629560986 469489969 59731394 995082646 371151232 784122938 713478417 780454082 334385596 874411035 447642673 179870014 780944482 829443341 559103310 388063838 760104555 415037826 549356693 521843568 412612940 340402673 721922015 10832824 878824798 649664301 323645157 488929109 397446094 434422823 510605800 209374436 268862429 328279340 413945101 633619539 61380900 114330088 168016000 677307008 946500340 100147645 686458706 722586389 950431731 611011598 525758136 414310264 104326429 700709868 150396119 281755255 279393695 291854872 82080590 461918108 973810508 403951693 796239423 182351890 728849870 682105251 775702198 919174830 303379546 979211943 26057636 122563073 951941146 661216265 580970078 292532210 804379950 423376583 466510079 346654931 769726729 689403617 408913340 464582213 893286641 647347714 472354309 967002945 630683745 382505818 439978818 169382777 715505188 767314901 421567017 360639736 971336281 646337715 41165391 609749876 821206687 576072178 205661011 723686239 945747694 95637436 714677450 889884112 59665779 30262599 186375949 83107991 904569545 704473941 963615726 447843907 338256921 646624158 992615172 758907677 993498647 182326215 338730688 245151133 960222229 828874924 165514680 130327712 338389137 663664314 824820807 145493170 588855542 639475114 463991414 7864207 35715475 411516635 319473768 730868814 722475093 874473877 656869766 35751967 521357340 587595293 554967347 250119578 952709601 365710568 738263602 265197785 213333820 705416930 346377907 266333181 354600240 480044113 124421118 235020921 744484482 388808531 347509349 399519799 100443617 326542301 934251768 417159725 743222090 570804369 822334851 468201564 752641947 289164620 260834842 595674892 73114548 906079717 621014065 417533016 600984223 357766019 166315357 166421363 898190489 50851367 649083147 32365518 446632588 522441142 919574208 872971880 970225396 76415416 444739561 71633018 368598079 648694028 675541091 827681676 808960753 844385096 495426322 181023641 51706250 709485955 805575548 797905398 497438384 866715387 821345208 346264122 82759942 124991898 613165901 309186700 434142216 168603744 922589190 423367306 72163319 146494228 560576753 254822218 128861798 172228265 555394994 292134881 994916417 804381802 809657189 756409796 809818173 111383614 323214412 236160595 132809926 134681294 32715282 997721353 404771156 419261343 122064176 270250861 801844022 405918059 358667770 492046321 909908863 539572131 710770 744089737 740254058 709063853 326764794 73364768 150454316 605683777 716863914 681600253 892497349 546054706 388438464 446232958 612956902 579931640 104413400 260467253 876418724 178627589 414743849 653195760 73726957 15914140 408255503 476754633 562408012 812033656 707423513 665032044 137485454 532336580 914215820 14559260 955141954 158795070 107540208 727708134 735124879 89879060 75894848 350622585 671239970 629951728 464597852 230972824 447738431 364282062 625303464 688878846 348142233 56431657 392912700 145927567 107618558 645931402 203155523 881461861 515235968 856032156 651177617 815851972 382215641 481776030 144613829 753518777 383858907 549355372 745189202 570008398 646582675 760058371 818614101 946747736 411402538 906910894 894460856 366697995 475360431 161893806 430560805 425362017 279755993 315284831 967197388 774564462 707508505 726637200 515893107 528630106 899024958 889977655 829221162 635764586 918254966 647334505 210638297 559431003 108270414 893812395 246329900 127105687 88599289 216308000 236192556 523182663 366951655 706489384 31603529 550048232 372560391 80246408 476526249 818668761 417753454 915577455 356930876 754668306 892995808 87860254 270682346 545622408 81467178 616539451 131037220 800430832 680270210 340650276 722706481 669235410 988418537 693384623 544550915 819069863 257001336 829869744 189810213 407874860 691502680 393248552 352688195 988458495 84583221 735218329 724545782 784352385 285975586 916883133 204734762 604656139 32782976 216021683 287238086 404516841 225819653 630225741 475264300 204402058 683626267 714601194 149413778 367167943 571105026 212331379 259936826 819224965 887548437 529218981 133824377 478713979 712172924 53220822 185103858 455583596 664509108 410472623 333338547 666303181 369968140 952564163 305955979 225550249 378789737 487399223 283172733 45987313 965524542 286445480 188126404 919348054 373524145 102371166 491861929 176417720 880053794 252398921 573829573 303715761 400506796 743856094 875472467 203398884 806759398 172632150 174717061 718759661 61631121 438251454 660272147 284970075 13602415 671569025 860806469 711105174 272260385 387751101 293806435 874272286 217929172 791692037 116190077 729158659 750576221 435235904 375980000 533629165 919904116 637271727 826143372 85579934 926731353 461483431 490087952 230409799 361209618 30210375 46866237 574165052 555440081 804348530 957791683 605290678 845807599 430688116 527990432 966237096 974319259 318049154 965797066 175675796 597088 137886466 315964395 821313794 238892925 217323154 523920913 133308379 236939121 301958159 688225624 442327959 351832355 775193834 164617095 733597460 54751869 835994142 73750926 616058926 791478309 993108956 308624046 576320527 340093598 318956270 800649700 111370734 605045141 847106837 658821166 445364458 276529775 916012961 400719505 300643450 647640012 190291396 119299217 175851646 23842644 727384161 400875815 840777599 883178652 357427427 463476826 24743959 798207726 600637864 83744384 309739295 969254329 778017360 139056621 527494321 236854298 764547859 37133139 543451813 680903976 52735513 426004352 431078706 666992745 244950939 630794239 788165736 237723646 780205177 834971672 836623203 102533807 632377782 27470929 940630231 731012470 104308206 84069706 200660993 60875238 686504276 393291111 100459238 207057462 345695948 397751124 799413793 535232429 726081037 374740839 656410388 388422103 4019020 588415822 74512048 845124549 987972954 948957869 630913327 771519256 187596080 520876033 358555489 273651894 172599788 238399952 911023163 759870222 982021255 436390511 152067789 541476374 723756004 474383657 182368562 942435018 381445204 731909071 487032854 855985745 584678263 804250151 445813951 582335030 803478752 561330064 970257027 888479524 733337869 471139708 337772960 90698808 910242880 727747189 819738719 928771996 491530532 297315246 680166637 258357646 977486652 642988753 45664924 914617506 516876469 173709660 456356210 291790058 887984378 973092676 307447818 325063343 405306653 477646248 312658235 544310826 917917313 485220685 795600872 836515702 11402828 174571700 443189951 662129407 31889390 44506917 114190771 34703567 431678155 442551140 653109064 31629435 484262851 284704347 846471032 215086889 226752465 779285901 908414768 895971275 528998479 162649391 869244727 365272572 455812461 485888814 933663524 143943552 299170114 793231697 292425200 32672817 81811873 43286197 397462989 674233337 340711869 846860880 525113877 813156258 990720857 455584502 335399223 5360736 548246439 641684322 155105182 772861833 225373621 260120984 968578739 959469573 670997575 714384950 1015531 50922307 167880891 998093650 980078416 104619013 455680242 24472661 732040535 743486992 578713914 533181397 764839771 453509749 792392880 580641964 107140043 2291037 250966563 664171177 506724953 898540654 715089494 416359751 207325064 914519777 818699709 489374384 284786070 390355338 989729138 763004111 59320209 897770437 734905445 861897115 486877206 690273201 707114845 557563958 580109784 651872854 109390513 901332558 642150487 431862041 492008342 961557589 428887009 260431595 729415521 673043897 647380307 787188294 889216281 970760429 206616313 134050322 657021778 344184742 863997126 449054233 621043756 505113516 998037584 101877180 584172104 281885242 639225313 851396546 830448538 830501570 788858754 655069716 2017728 1224787 842336794 278442904 524664201 946984187 964896749 2832988 277086237 908858508 594471863 333176588 658966651 785843511 436542604 272291470 94448133 965130989 522018575 168936456 866593897 749840259 922718527 48372096 109191157 855373152 587695937 887763941 673306652 660388348 720328644 883712384 929252731 536683277 289552193 393561360 593422774 970814910 691914253 574927689 362500830 864870326 802541344 309646489 138584816 968781343 477164268 389714462 683301797 503053176 624331374 466084357 498459207 478923618 199553112 413358401 951957990 542054399 248709795 383363041 107347713 456662876 493049177 589906699 44273260 281512042 486520400 522166620 971092088 128330428 868910855 987470494 84758111 786084681 919011682 551145154 590807676 895155763 406086457 824681790 515481380 119036701 898201827 541654501 545606283 900207590 778329108 828338847 558143491 285077836 31473204 876101101 702043528 608263144 818446052 867898753 421105696 934970375 929652489 490848678 287342050 134818772 116457404 235194901 939552848 901955044 599351029 133041140 817427056 189655802 167953563 977998330 288748965 2257822 426154777 553843956 429435797 116857351 328782966 921731516 942316338 430060319 299205618 906493108 619005744 981655821 34354798 295729755 475994499 570788205 575315172 38554629 925645835 294679664 548716014 333361986 947585248 308360164 733249119 788469569 152278966 619586619 256033588 193512293 205376165 518294573 238500744 103450049 623604636 1795494 380643619 116122536 980430894 757066899 874970802 952426563 190568916 797914427 571096436 326641069 929275636 997819740 523288430 281202234 357682672 383197723 700485207 821480256 175524090 107001157 611577600 836526883 732613432 458190831 236753372 85120828 351524371 680987636 84982829 791828399 111724513 382975850 28241057 173064809 819929209 169163907 338619857 400112756 200833846 743542943 65460189 529935039 206297106 607175041 851106005 81776302 70241644 777681486 496855130 445670947 128199587 582017140 210273551 71509050 510516904 9840808 60225447 180990856 810167741 994233858 809898011 253260425 815708227 471302833 850160263 835522730 506646726 60954959 389007428 638984252 23591154 934968521 593701864 561688630 895099071 527581809 108623013 134881309 771133897 541250526 66708054 354734427 928261285 179414353 257970941 480193591 942376187 442886507 376024502 211156865 867997466 240959477 739419411 816385379 258206940 576254609 891209290 85576341 640093378 117768594 35375425 473741513 802960349 175158636 890383756 208878597 875749510 193466180 17623973 396337738 480125404 532761915 359428818 414358657 822462122 873168305 248188300 85159554 208750412 50726630 907445922 166052784 615527621 757353559 737752124 522675809 395383434 889538206 814206920 815912677 69816714 900630990 690802963 506139400 583838630 426667208 958542068 187707915 368292419 771501755 635135418 438486287 698518587 644332677 717005230 915633073 913459215 582457641 520888331 332009873 805128317 373476160 748728865 384781302 32074964 381827077 96041053 520209400 733582908 350029 772450023 528013925 868539100 982010531 473759818 777207147 788291028 783012273 318164717 981455572 464326289 359292973 50832251 340688344 405343309 462218522 234888534 866961992 603450910 435469161 494358640 854851046 995072137 739814183 615112304 786876164 908452493 243213549 189354284 517797489 443276200 217336157 763737146 362975340 75675907 445064191 229392624 417829418 235860384 770354201 759544974 660006366 454264768 327418694 59857297 744398313 942201328 23263996 104831432 193962091 846179765 560645336 747989480 140906244 65857587 479783922 601698152 532066025 69288970 501481839 911058086 538392404 463301787 97376946 309317747 144939407 386505615 322408542 629285627 4069616 705345427 647471996 855334214 561865945 417078281 810381232 298449280 618084196 716814902 804798920 656299913 815568226 564132132 319625895 387876866 269530956 413821870 754864900 180616680 936799084 606910 573682953 214888147 714365248 483674070 624596266 294679734 136611823 786091767 865140048 6388395 980606121 217660273 406841463 649308818 763706684 779930062 429294663 400258386 138842540 635294996 351800578 950467462 590041611 754088867 537003001 750159328 510463071 60818147 86230108 5256252 626279516 159197774 79142868 261085928 244860654 668363443 573114804 927734765 497893908 506772104 279199331 325853671 502626054 953768210 924128135 210570157 859569282 138530022 368877126 26179864 661998012 433869275 572065199 784643854 677086053 804598283 260442984 471798063 174712173 555866014 734706121 9729642 834144692 974710348 241934975 37948992 935213629 906478367 693110400 485116621 616813419 693089445 145418659 681333638 34353552 403740423 134228122 450887178 232976319 935185584 821397964 611424526 350109177 963706536 674279913 292602132 480982344 604137222 224286464 799304741 271035634 787590389 687207336 78403057 426148730 119977340 476257298 190354987 14016421 519863582 753371608 756928183 232969042 455910458 108340373 383019155 705844170 240271561 380350712 934825820 499708534 976073114 200452874 596735866 273419963 654783037 229412453 712979586 734325638 420197037 412356957 312040700 281458210 128393341 853003867 446304837 33526874 717350467 312998045 948162964 804549122 664562236 389452570 306883807 551707644 139534887 272351635 376883559 73114077 500562081 305273214 900405048 41914434 177373918 342602696 837120716 680970526 852758268 748303372 149647347 71579864 960413425 997589806 270926007 649137175 592469899 698339248 708199430 847448091 146588241 322278180 930009741 6969691 303463699 292386890 283973328 756967485 934831235 875293415 81381322 551025880 669291390 112619548 574888817 746816798 836053146 629679848 265861596 372708504 581355070 936365433 97916730 908799088 578317478 194920279 218183485 870171402 180424967 719361194 289375220 654607726 666967590 408665321 249426450 971483815 123875391 214250454 57426954 935651773 335945377 744639543 51751075 683943696 14343076 582296594 193590311 794474419 632099116 756556885 89540715 498895046 387203595 230821422 242788759 966595626 769015316 663739038 331691894 129036091 678470099 400899223 570180235 492356471 309904307 436382238 269303250 8906266 158510769 445788333 394368036 828320477 479083764 764779033 350935041 297287100 323357020 744625556 479115002 978584313 702263475 948162460 154003806 191213316 341114613 385732267 853657774 111958091 963482750 284825010 501195448 638102510 488514213 356919348 102255171 352645076 260933449 296120361 975445937 118246448 907746651 172589837 593628929 792497549 287001649 984511987 6727701 747018032 212160168 988795 76426188 358421878 957784451 928891255 723144239 606821328 436873170 542912931 333017498 841285104 14028626 184090806 923429176 788016149 207129911 333369366 983451507 313945788 401085088 717044010 965130014 433803851 428874941 131393367 273279345 715669655 108280707 768503162 166865064 452678936 690329385 565619717 543891639 795708376 559502117 291010460 277191928 43386489 444533043 85684796 204417752 320530631 771525537 27120675 538309110 210509191 22540366 461381739 744929385 313638192 290570923 681425302 568813504 504482582 626613174 513926020 557778233 966299062 25909769 230057617 782965232 119211060 557433838 698933592 904978078 571983517 130012217 799254690 2302604 634283056 368757490 613297782 151058710 149498998 942698729 802206989 290881170 278462032 680080270 587953485 731221347 903952653 911791776 311379153 2084591 104536678 287007084 737385692 367545857 935045799 5709751 938152066 521741881 444959557 294803605 284792979 363348419 860160580 391191975 153392221 25210763 46445750 400110559 806815806 463174093 470515815 960355192 651479424 793037051 915425782 234458361 554920286 530681058 69582249 463235686 161996110 129851175 440987958 784516611 400689539 115981866 615179346 370288822 215764731 782271109 892885584 804958569 464543375 468626384 492416644 186203121 406476086 281504272 621455629 921505151 709923851 61007576 528208972 384784101 265567742 168803999 816150118 675460523 421594522 861481793 19543828 90670709 17688383 137090853 70523357 646468946 718006459 3208193 152108584 249819683 96790723 600809072 878750901 742813607 221348054 142100631 597088583 898687797 947906919 666972073 551112206 649087429 229965191 5808789 785175062 591223594 337888047 650906018 23457513 70822199 339751483 60063226 799957827 956185130 465620812 147724470 187022990 69565142 460386391 948081645 439895002 763578804 636217625 554901493 968680618 42593806 917768798 61832463 295751689 194556885 422297144 656140464 389202081 90994326 651695712 396032800 948123957 332277718 814182250 230288365 247221009 631313874 961985904 98058654 191171688 188127271 954218723 207209759 498345502 186684285 798685585 288766230 162091954 508054920 227013239 45367895 619202845 36151819 540745648 663533264 996571975 439647159 215735680 437375786 314434684 858932604 959002068 372178482 420764325 903805284 188286578 721248218 968792886 358765596 133507576 341803994 131542792 668402721 669628732 83540966 616204828 946361746 967879034 662740577 530711267 697309766 400412780 392933281 619596221 402948965 483068564 967625145 292110805 339109904 655333880 189340881 219176404 312979842 361662442 6056302 778374618 718038277 633001093 353969428 231781623 621929653 160200586 351345881 16687389 46572871 581597692 878936656 912065025 366731876 769527472 413057524 848636078 668509570 76176487 300188673 657068851 621182965 545676872 250850776 911454528 109571749 415265528 137610182 162875913 614890543 915685485 799788926 136543012 907970369 225514215 778917562 545140859 347358300 937378387 967516434 168276603 91306883 181804662 711210561 218153664 13812439 474640322 326048356 413973512 751246615 355677071 882310983 877986395 971747860 388904510 182650406 265604087 243035614 764130203 639062736 700828040 553595019 955893119 625094947 765757599 655011623 304511155 816252598 425455217 396554141 481203200 923230619 503374906 136235972 353980149 492340851 117611769 27388992 722339246 509235331 565717242 464369279 607427447 223882026 245787056 290053857 963312290 511982964 180630692 847793282 418071055 135459673 892340482 439032257 699943481 369127832 10725972 946770111 688641438 428273819 694896940 973864536 185841887 592603359 837293684 67256619 55808621 861065205 212910177 172506153 779436093 701805933 771024918 260679919 449769059 293194779 341293573 714017693 465945810 301394505 553588006 585006120 221359783 414454719 790111353 84274729 798815229 303402589 31673851 534493344 570900800 670930692 957311969 42904295 424364703 247046761 996284152 185559403 614553702 686993128 200063916 387567680 785189146 585106636 443242860 837673812 426721679 521092541 800426696 163102703 93677968 883942318 347867528 339048050 744309816 881375139 899626243 439237220 780611223 751253517 571088628 148257643 812906531 899402550 858975353 145006733 796027316 331144497 842431570 83841865 349633419 626439390 160411273 733451897 959680613 299850387 787451519 711786845 260200817 25452642 47503006 689239938 516753711 377271425 923517420 55750969 367827529 23266180 118792950 745141360 345596119 542559228 298341184 831726745 974236726 198637934 415037629 443522297 728622509 220662161 372533373 680448487 543164787 260866865 251702022 107430408 283739050 782816264 815975013 846922442 45577320 846004937 258650607 929799958 858514323 910263755 610532165 37308430 893882077 693765592 971717845 776022885 367300994 195851949 988673497 834861125 876754104 586444386 505854851 478164017 581893052 913680525 368828484 266282480 970848734 61219725 122998162 271380438 115542854 60130755 321909899 407184813 703459520 853001364 290063669 860451509 600215562 196646120 225413022 978326725 473258088 195470238 689252012 612319256 608850424 648261706 723988107 108886286 528158320 561612112 543467053 19125131 37406444 175546641 344186220 549541693 201732933 870285046 331209791 278759471 594088931 769773300 514033659 63190476 803163542 235695799 982564066 760441756 786850196 842192175 176224256 417758498 26737899 875608179 857419209 158471832 166077338 735109703 889993819 782745304 755558050 72688207 389253951 197988431 593686502 470195554 343633679 717214363 759524249 492378475 559580555 191709830 473343635 456887401 136445033 392881425 496869188 980916419 573048617 607401756 975963936 552509622 825524507 51742465 958791950 751819569 960340737 182093080 590616324 39624979 106106569 735553934 125417419 288304983 576407154 219615813 138266151 317394842 581661474 361822602 131014308 590224167 302091100 991140616 450686474 791899063 560297115 776417604 217932046 338082535 406170163 422824456 95421380 137315661 443266188 378226983 315157739 822176695 490612954 909021128 28548135 608104523 737182419 750557145 582886221 640506299 608900933 504279014 110033062 161416292 633379195 96243350 995299269 105096875 830665272 392049218 771377791 783761451 399211121 714426262 754605964 393064982 927389270 84071275 180224172 258677710 30644341 112816078 10555537 14644039 669142447 964831895 954864702 977709593 213008915 398029442 241920079 856392700 872075413 749886581 823643812 550607238 502004450 111227098 619151238 354525193 351406703 197350114 601535106 467692722 256786397 829281309 139166987 939760387 52022130 697119432 218425507 327350553 22992444 251369952 655836943 38184398 70835031 357486960 892909702 813105645 7798773 124072335 444097971 787940432 574240331 898898226 656441154 687630684 805297030 16816692 409308816 609512717 338470598 449456620 869825296 570655546 79337744 466668722 76539802 857932369 2796690 344319549 553238167 904738282 980651807 781679868 512866719 659373077 775283425 581752677 511178307 840985939 55889062 729298280 431721840 759965302 678904151 730977026 428949894 422745299 108717375 725256657 350060810 237335329 797014711 892973008 990352377 780945399 38244741 895702226 989067653 365731483 779364861 636092812 594882646 576022228 801113883 39303866 803375408 363768276 452592589 607669262 733888315 747594879 467026386 976787090 649212203 173418805 485404560 360635690 869569906 72461669 234985993 655801890 446080225 363002762 973381178 587851297 98290459 161008699 582267377 324875025 824024254 378868941 667261537 318366890 822546240 353656401 710412813 917942282 106270463 597070236 549207646 651100921 910033918 907825937 367773015 336054636 236748289 8088142 610868377 775318858 60596015 863005791 715872337 914754868 116063172 662193913 173353608 376905339 922230505 986718106 554178136 466920722 756460069 778067981 197234292 82210526 285741943 929115555 961262484 741169493 538195784 483035907 36480802 170787199 627315324 856672925 458195412 195390477 58001935 413316771 358438681 206769993 297337231 369010925 12237016 65318886 223325434 220576294 182883921 128989195 388537310 807923478 379112838 322891020 153264305 76285346 345059353 347307014 890846325 718535267 926114571 15484581 548057066 908353137 894717862 24745583 501017709 348310897 117545914 984717396 514894458 666406104 957467364 162110342 150024574 470899219 717552081 28395445 881257143 300620743 12126629 897415656 266097125 591048760 798708589 455922904 82608937 14659558 292715201 524458898 705105740 187722902 306032447 556640009 593847076 7173821 988972403 582866477 833388462 444514128 517798398 780054862 98006964 165035358 66754304 785778008 856198793 420040074 676337371 55186969 381904563 904609459 558861398 623288375 224805963 493081113 575542873 284369594 383563790 705809649 706498963 730481921 353408460 245452110 935575464 442493228 558764646 393073966 95165090 854239317 370807840 570056444 756303334 571164780 198504706 316631979 468307151 992953479 75348176 2682624 701241717 36913671 73545505 563670112 878888233 303810071 164356706 578051216 438204690 94291259 862509886 924482950 44326506 250258583 252096415 607922208 423379626 842001505 109245601 516310822 167613685 784642741 214561171 88529025 316778815 150858616 563904609 271398965 27734055 184180228 378337446 751743437 345448816 426547900 952172091 781063138 124247670 375515611 117329752 68662108 369249752 282271650 241374790 896885361 566449341 167009710 669498854 758887614 904140712 344153548 29178654 144139600 204885063 523904414 377539590 436134234 640714302 848609338 1015510 569000058 707866695 755001076 198887345 630515888 580366214 203915938 95444222 779942491 835519550 219203026 569343510 718298145 492012262 911180600 539895847 219970679 594742820 400282564 109459686 57710160 107244298 647215332 399786744 914721292 480853897 396926248 783644002 740870070 457725532 981014479 706010780 533275663 479123369 23897363 670064452 930472721 31805953 415469533 747491206 665200079 882016769 178974905 213399335 511449257 110911081 723377288 924394174 351069642 993137633 712958772 670491911 699300013 548931427 290482470 770934427 214237796 671524553 580239798 412479023 11406206 572341097 275753877 267236435 317511585 705062018 966582421 837297493 165880304 969283565 705192263 537550947 76108827 254702866 525868243 674411357 679749801 874552850 869745303 557461830 356143707 362522592 34973 870790415 267163982 116580491 407946407 626569902 650346510 969827278 595286456 992730802 351083812 287897775 745551880 860218905 163816825 765913902 114958378 190976543 718473843 636624076 537152926 36359213 792267737 780871693 965381728 905123702 3233086 579481018 934407507 560986074 753815130 984258881 492500086 912235567 924956087 317671090 215237971 923800803 302353195 673928627 764501025 974475065 196071073 603290828 871672149 511304431 745103471 789500431 663911969 684520767 181836832 978705366 769478011 588929139 217953398 325028198 230453384 163807855 912845510 819801365 619380993 177004451 461882876 507927145 241305960 211451017 917137614 886780453 491233052 912834468 56303465 522268312 277577869 820460101 610331431 973307037 353928493 417684890 381489193 631986391 7468968 514356221 271645003 231369601 813372529 207691740 974930477 796355941 580590219 337136722 44236421 36399011 279232046 345380836 624676930 166032145 367847695 752318624 75728294 586469028 962196123 126154184 882172242 674083699 415844218 408406975 555936805 136930133 858195472 424607679 613760034 542632190 257655658 970033125 343447748 284017336 573264799 978743215 984428328 839635838 468089175 81165376 169065690 833616040 913570984 471630847 420128448 756256815 146490725 454221133 734906413 146398481 197761112 905360898 930652929 759501523 432369082 479218722 759798587 871475019 426360927 91676108 856282101 302658171 843110056 393372264 402296939 79933774 824109931 254019046 545197933 731870350 496226889 411329803 787464865 523655869 533979134 72523457 897460099 667599241 978127124 41331188 825747972 942766850 270737445 608814329 562511690 713296218 882104002 743989908 432774406 878812470 763127404 320646612 790317228 592474755 477312915 948571577 784755264 264009653 222283109 898005267 834098361 898939776 362348875 555255651 374198843 709391417 460521489 737141069 138098241 616062909 208511595 300061873 411173711 913266743 820665659 563592934 341774050 419875396 289530954 767537013 631013882 611472296 474895256 925574816 83645652 577721159 493315922 618331154 32731772 292118604 861050773 942515825 932287648 251062973 725251606 896874299 202966145 11311614 105727474 378618129 334355661 158651255 785270570 497396584 4328538 508217262 873093098 206767704 277806631 705283259 526759946 105033229 763387469 983465960 976953580 536295632 949378881 893158142 355463471 965060416 741826692 497694219 179562821 535979732 66331338 748538840 735868745 727935962 523638990 994412123 979406028 656503618 43395096 67789333 347196395 121833156 311100694 870566353 264987841 485384857 189244570 327669142 789405894 891786459 237355404 582486164 901971437 798712224 322935511 236588322 60302619 420883791 621454404 84143917 154439408 164273384 664531293 197932627 370279246 989360875 562396710 828151458 686874021 547702381 730811644 824931320 647569958 52784807 410024328 298058332 393941083 301646341 59770645 731541354 544939594 666605317 830254693 270169150 330755873 523009465 961599935 81294715 101897200 734654399 874935716 858640192 597507076 568916801 951141064 25494675 10794722 205986200 145126305 981957101 231882800 627219316 337037235 976111418 435896750 238043852 810897161 819555198 935667579 534492427 266571023 64562461 160364653 785174963 565143160 374412117 811698910 672494183 317800258 470935604 895898168 386653114 897076699 303408390 491408613 115445132 816874831 727538443 243233505 461334146 886116352 323723597 497585980 106390539 823151566 286280178 363605570 745538826 353998201 156141415 387750526 956489914 214074873 432494402 863756394 543555468 325801433 879029461 552965330 406600670 602759185 300707047 965645716 481204258 867608774 345474114 782623073 533441697 995865488 744842569 546222908 327655015 303991906 806364525 386242269 704528025 724270946 447419683 224232179 387213089 528234114 292087448 56909523 40901792 629719172 996843619 867959694 245521849 579522004 69024894 686332248 272257056 1943612 899901110 971334819 809688631 829802118 348033215 213671156 720668911 441973084 913928293 44695243 540676882 752886558 883964077 231548860 445274443 911649434 752090553 136159222 947790955 591601934 964764989 924529342 148432335 360326123 904925818 973219494 140342718 988425038 24841310 687250795 830386269 128281847 762104879 100121583 112120054 197822329 315048429 937146774 159513268 256739813 615521034 325144345 486737732 558141299 41896462 583635655 992643809 495763485 295549689 484657503 401643234 270150146 475288561 472309780 867150282 887201641 404827103 673277629 393001367 908776063 108441949 539818630 805902356 771336881 384108454 974393562 702782830 607005092 208276695 316906187 648746966 840876597 320745464 759663513 620986169 708837578 183492227 266085570 588249693 935413824 252662593 181779709 777166488 387737792 313321229 707002193 365244581 593643268 297964969 55275712 550812118 981203629 925746348 197518297 618072669 791338229 825389576 441034117 585986485 461580565 132985880 21446197 309152610 883208437 811394169 516957289 657238820 411357434 173844365 783100823 37403720 320541109 248252866 680976516 840278955 57336482 9946250 274042620 316821863 229886849 397189252 99480096 48992243 289991777 996496753 846083746 628763908 945294560 689507922 996190590 104239704 372205650 993831041 972724817 146937385 231757822 133903985 584821843 315263403 938192955 494878563 480566510 600000051 51548549 466776279 89217865 578935475 907163575 35073293 416056406 810541103 720392271 540039707 45804478 713358908 227985637 513603959 887540033 268633362 912692592 899414855 422758436 771868888 366341468 190056083 635357833 120534469 19177091 17490268 480348512 638206239 351256727 328220747 995334836 835715264 517244642 817673838 646884826 355974690 16864520 566364348 49354189 21983430 674752307 899017860 78735754 141717933 129869834 828976421 642328300 106974567 596679913 158022668 844568628 991004018 267618691 504968631 2355398 862433134 881281579 639963458 834948471 303608513 79108557 411393745 462378405 503043334 434633741 726792906 650960145 200746603 831782622 470107578 533215734 346548663 658971091 172008261 571285720 921112887 879662988 838817329 724138095 7938927 968247606 592438384 552360452 884633427 333436034 134596690 809073501 510041876 409380630 192949221 352984849 451555906 466986123 570374048 877766359 847375965 161465077 252556103 885029211 957471383 513479389 472737963 672139431 777743131 373705438 445661130 468770049 754623701 671362296 745986782 179069675 890645660 972097169 652037500 564166368 548001281 547131217 951386671 380515101 270724378 641286690 368448908 206501945 996856942 312905345 136383114 133126630 825510895 127872222 939203586 29346134 840829472 93990116 859863309 615224150 630803856 366442629 552911191 249619339 517144711 72035064 773498616 26810104 417593997 806685148 628783571 377017719 549554346 835314367 581777145 596270336 82962019 710706127 344052510 162326062 867675181 376728285 806100549 257220735 772372416 361301448 423429849 943856150 249304283 304178508 604007256 159229512 973613097 396783095 549712156 262722124 763743537 601763715 335265042 125769168 272197258 405806198 472026568 120898835 683278931 500919233 346275284 860843156 880638337 816392652 176521794 768708531 918393883 651135891 985406636 874990252 129137311 910108781 98711854 12958223 874066316 842893888 90868778 361932584 252543951 266448719 922873718 674061047 572838673 293856126 828868839 648586751 961696984 163636503 483510535 395084921 26082568 854224189 95947 128431200 186681163 970973701 519701012 850416647 547879553 44164255 990021320 32353088 852183187 220118385 428529772 2098855 660643204 88037156 496517202 759928924 782203306 634649770 804343882 793718631 272748107 154806891 315677530 538651182 296850651 158189681 321308030 280709978 528848880 382595051 541430211 316115843 202941523 381765366 679714653 535367765 401518815 432469933 298794825 236970860 633322346 481229525 299733689 885549737 770289118 34874475 917122720 818054002 387836665 872010871 711862101 522458279 21545624 406153915 69751004 951009223 347766464 249795132 874042064 756994781 212470396 745105904 77403510 979176988 383074889 119600769 763291791 503705293 186122162 53483575 733413085 861059983 881243682 768699190 455498068 650516752 962827740 369445333 640672673 711779622 123225570 338259416 780180212 168655266 934660026 881421047 502716474 305665483 493201443 431265297 629178600 388258195 704476725 510404421 877555936 890163703 146904755 868255168 779797072 475381312 77614057 167943442 353049180 602528602 285643146 712286803 851512811 956148924 230086406 422275260 926812435 745291463 849817956 365465320 27749032 402728171 661024016 628643216 500746689 72011032 711536592 664979867 702062429 367292267 295478009 528923946 202178691 221954774 302883092 89228609 381671962 7507793 474938310 110377203 852356544 806678983 400640323 741831099 832800931 563675866 888486370 822205225 483607650 757227419 144662258 768633732 748473641 591398485 125940209 235843175 890710788 207850313 351424191 424064773 297260669 294485697 448168843 482654779 836148532 107783694 231203758 487527715 286852770 401795467 899537939 878396824 265590477 278854018 548655263 9213946 478488561 880920557 166564723 920299948 359396291 674226434 744559058 924863032 544110198 381593750 917120696 445132977 990569961 642426632 802945600 438078406 921245290 820354579 299842084 65576238 842272691 252480795 922241063 379384070 730123429 997231704 731669926 410383071 18625315 884881807 797624146 999641448 83058018 146814088 561674068 159222732 11764137 307816809 860929758 806256731 689196065 431915227 822337127 518780980 404367254 17219454 771886449 784912372 767389637 163505629 72429899 313564083 792911706 840254708 379264634 326820842 491804545 319027994 101779429 952832252 335368704 196526859 292820838 295738193 759811301 47161945 915708539 558937383 237613544 176165358 902136429 962371734 765531854 924638682 769352110 73674760 13463767 757216821 302093653 154498000 348212773 147130938 795520910 290911528 397791419 131039041 290184571 654536139 724115796 968687166 272809573 833805504 39327834 764421628 16318425 174506553 863747139 501679763 996291797 936543321 364176568 612458102 842847166 820633792 647175434 295757188 301015803 573144074 113644101 591982088 937969060 637594633 556331887 496139895 525825827 991272441 810170085 171305388 29717717 997711487 412435062 543340538 550376048 744944205 542182212 636544279 783497591 382042719 453746599 74751366 958567053 48709875 141800791 454004583 448610070 76664088 776094901 43571437 605132368 322080238 80545362 146493317 94435693 544457802 296222672 486274060 417239419 361847316 374435947 316530754 941532812 49457907 566297860 595899334 984108652 43360056 710096004 163728523 489809874 674476425 267373547 593446490 231234106 782396130 28214270 504303202 207702608 596123512 730361856 142047584 535324075 708175188 663726242 81900805 871088436 620972317 567171428 482745278 180050583 53355725 129808166 951176127 939244195 509828107 453731361 535422659 939155084 132125866 760351841 757367849 964955767 502831674 544036616 46149132 114895307 106958654 289842882 960612188 882903403 485148470 310973150 502153768 716157923 633356284 847436157 269279607 967107266 797841593 681426565 205842297 408121082 466190355 308708793 298103134 695876439 918998502 615712032 608635905 614755737 794874897 136005387 579313605 449163298 462133301 483217334 562247367 711725963 46371899 409889355 224004154 882815828 345231201 992370625 950074075 919112542 205122500 391493867 266797556 443846249 119901731 262494583 940944464 182521035 717287117 282734506 961160799 92738643 260993146 192139543 798798080 187067871 856788764 775312443 796576571 325843058 383061496 858512762 320725728 20105380 839849965 700982372 158801590 306050130 820472751 833477402 864394606 3899825 303444632 301262066 30526880 853194931 244303832 274211496 71612776 135786771 313648456 846919476 868356821 22945755 399186676 209951578 385380222 708625130 994532820 544880116 887953626 138714211 273549089 155788536 702032848 70108399 556756438 890052951 343093388 636796945 294279428 833980833 929550812 643655976 443449871 505134180 812291463 605426501 548207703 331098272 443927054 378458091 978167938 78399712 654075210 662799466 975935913 770779335 993949894 42901350 400624334 803698066 108124767 383493614 297370893 91832063 61109839 255987909 640992439 56470364 323876735 856375486 512271063 200008750 200736381 669057449 186589241 714398403 636672698 489974135 575018326 916283350 886323044 376060465 177281178 749263495 172003230 611529247 581994558 739686500 465703524 677632134 774579364 796915846 261697535 730217430 75011819 685663892 153908718 54798135 232440585 376255866 216185477 5528920 79655659 239076722 32361583 563444496 798569000 856033513 117806520 891964509 965094050 111973264 741186853 429955301 950017622 428452788 563178436 450608548 882140887 615254304 334027629 594895094 444076231 336881035 108046769 936082372 834332946 787013788 845027810 776488478 42543587 362766860 845943243 784372454 305588657 124519626 92794055 599188646 504626301 910917464 116429346 540670627 665845341 50351237 455930721 437413472 70877685 455937922 39494206 960069459 500144409 879589925 470956999 64171274 351687097 94064623 755623896 645437667 976521072 989351227 844216909 541720192 794193440 694653859 338941752 342891185 122240619 675033797 945035357 323464078 161323939 87292497 49858450 365366675 161886213 275051897 32403170 715012641 684339671 715988322 180006451 223416615 898016289 69066945 869338960 995366540 415706549 998219278 570214188 741755778 30993164 406858203 684159422 335864628 915947482 639919107 35571524 132106880 672950342 948429053 958577524 77965079 34387365 480426854 824714934 844984463 575523834 997629637 932751932 396359836 430097528 996639504 72257128 225153178 256835292 32560817 743390768 616878537 896198082 791920856 31340396 840685918 270893835 640024324 860914277 288693487 357038815 639247259 788765066 389979735 644313833 149603234 161891894 541667421 855640472 177435913 646607581 541195198 741632648 545150411 853673516 351865531 220171357 463925572 861409943 502428482 239738922 286473496 138937060 345921506 838479214 721240848 597166072 751911192 74348593 261437291 657881252 48005546 804433939 268423190 1153734 15374483 780419133 481163451 905869367 894549141 916601482 212541756 488501548 276885064 678161359 281669082 541108208 825628776 670052923 285918161 726487522 677449418 822977922 445821356 185908509 763005116 495632175 387212892 875879564 834817992 81502999 85810085 725396253 94021194 709928869 260615518 733099430 371826620 346010880 524141051 354210666 470976523 464711143 513325355 235718459 188312793 191244022 429181164 541349787 511898980 775125643 916249566 483671284 641255500 455088758 969957644 808656995 112145814 503264371 974409469 342384193 904606450 791364844 505676646 763024004 833257598 292482969 228201797 765186842 590070716 690305434 496615031 326927260 844887340 720236153 914241758 758753154 980603488 116984942 874969065 468123499 186287639 694619706 581872325 408130419 128536160 561190045 198195113 779274663 803765899 864629629 205977438 873264174 460636621 485687331 923842268 209691699 821204848 273323428 61299906 140441789 461708659 751954910 743688841 429520981 107634043 93323352 889894240 627781840 713911702 482727084 1203315 53323816 995309638 20463432 801340719 445137141 970042253 471816509 165230671 886156669 99000717 768267587 126898344 713868352 119174755 505408067 380280346 741352167 655244113 141701373 328860748 121268947 904461712 541121115 516565047 999878081 474838598 107110010 282097806 581922633 976445624 162127902 260984032 87415559 486164018 922723256 586777003 778114062 625225562 94570287 474693039 291312541 679882571 948259940 125201347 443431620 999787210 829341969 710602824 389491264 493443936 6056678 788581251 644868213 948683908 170637077 571936729 618481439 522841134 833367944 371783859 552736346 473632405 267642282 861282737 818947938 451777306 375998273 292145253 721977097 599339510 476476932 810020350 708525032 197044652 768055938 916321244 309988891 587918345 837447613 833875256 985533104 769560858 80874309 374619069 208993730 121413118 248694888 25228040 116359264 625408195 198208841 99882698 732896179 898220024 908917239 327588865 67285443 499411326 905098378 224931874 696409581 781758207 786181611 803472404 173973777 539130642 863149795 622483439 505162702 604949473 133952319 341460378 226219960 617697511 598580557 824424655 586303562 291292035 264142860 426371848 419288109 827522886 970494673 934733545 923746774 910841742 3316672 373629229 588912033 477467725 945379380 190794432 112180285 922995779 91915196 274948170 237594832 895425865 298352583 704876258 916346261 815870666 996002319 256821732 910382166 168661447 641625105 344851501 454217269 997393528 829865748 465926491 722785867 828607991 488481244 95181429 594209551 677266008 258207339 759458307 826587559 90219569 298392308 45112563 515349235 473386500 900819384 312494954 644961495 148883807 552136968 322512213 860496219 401233616 89834130 520136023 56683837 177641236 641987023 578790234 387597415 92152399 756805474 285666726 429652847 627846926 848182377 260869715 759044154 784425370 91568934 998357450 560666044 727878108 678813867 553048378 315158208 57244770 457905350 932190331 844770270 943628823 303271971 245289580 858135552 629640902 490866465 48099562 16054078 315735163 742110300 212287163 782870033 448711583 44315439 553209920 564686918 134062531 443666111 263827776 300764274 587612274 752175952 932935982 852899397 85737482 297067987 472052976 449303274 239667448 275783081 382347743 391394516 317363159 204781485 892931691 796871843 144947454 627482243 891697667 540629690 760886436 975910633 870915673 45570038 22578932 398147818 607723913 503086827 579205645 240726146 422992916 409088885 747705051 432767895 426026356 751366905 971806537 924010637 659451727 961512616 753643285 178119299 894637343 914303094 453266943 248392536 796617192 860959127 945987577 62054711 176763833 281787837 525771604 765043911 381745307 969680313 253581145 558376189 129997436 698635284 801472948 494159465 27803240 452523983 951564580 650296987 45876049 791695848 480432499 993009370 870281448 487640502 696951511 884113726 421058449 757279340 46188242 863598392 871105387 696945043 359861989 482640192 776478596 604222174 767233845 578099952 636221633 317045269 62112081 421646497 108466974 272779790 586597928 377499323 273371704 352182942 676115170 848163861 935313462 24702057 747090572 143337898 125406009 810878246 800493651 324898327 107908751 814260344 864748899 172989806 120266455 348420568 610654517 815997743 349359890 847930672 369375509 96190170 484016239 205119484 813567681 280803899 168627455 550554407 605567610 134421988 289886154 381856427 125599812 706009881 794009452 51665912 140268 334149698 161416537 899297877 171736861 691290045 931334156 16909774 790122205 565670693 881266185 257016608 590839397 388229405 329647644 393679575 487600862 96997522 124123001 520799776 171108720 368750004 984406127 260996750 830329 720115854 887285126 46086613 20082281 360125820 803806600 194892560 27197409 723506485 670882789 836167895 906901764 616114533 696018836 535440369 131063957 1439542 805907028 263405483 374455460 813333372 320425374 379099619 318616566 411470948 354171872 338697143 888842801 797678559 119257060 384499912 877997603 741843452 187099247 162665995 399974412 250570208 350244435 724614396 998931141 943597154 34148692 876734032 867348450 853820361 394727216 947826332 786693835 983389408 59956755 278038294 63448130 325898278 583740978 271195966 145056785 571314788 500064778 476888077 875359558 533669458 711512362 134070294 396169009 216634578 853385663 983090843 520202140 27725638 821988362 475949952 903764351 620731917 826076507 910064022 602492512 971661812 470077480 410121212 811186214 628061834 321168056 985154369 788201426 656282606 882368467 469127189 901470785 197825297 911977102 918983457 693459670 446965754 662826292 484258865 475090441 125320660 451844188 497234776 931460863 645984132 709488141 947727998 725210475 454357188 275056316 471671616 455294515 32150089 40948517 62294845 311805279 381519187 166951971 778236744 847677143 272117526 803792946 623065368 954503774 450725919 543911489 47633203 499629292 709514626 813789247 213923638 887984340 181895780 793815733 941671665 815130380 146909820 469310770 712428770 401244813 260034835 951489467 368848585 235537822 137938794 252714559 918422058 688117642 372167221 295750376 218171671 474786913 43890715 662338987 916784260 64247984 643673521 107629181 672913927 130119325 633265651 43634349 64284101 351640399 512006251 448728165 401066709 888707332 268646108 653204749 439954545 997594209 710417405 506540211 360412984 130343206 1013929 85610661 411357070 196384299 619044318 539061803 756351124 219791296 431808472 992095110 776010945 236197346 105851122 169475372 584362876 621923747 260608466 724820079 261510642 58495687 588805 68444966 666345812 264969233 566229677 530526986 800171650 740991949 128579872 338185147 574675570 138429739 3201728 499791132 962094403 499949364 715793049 313945127 908212434 346350928 929160680 603575333 338197051 736477246 674396976 36815142 477406712 627508613 22449720 358189743 471864864 478664893 600980651 434796587 133730780 954695922 922917342 843806113 554836624 357995729 216392891 141970586 691240808 914499234 95075598 976416118 539414388 723038551 589324758 157086798 911189642 28775780 930710288 471331891 667992855 235355201 745603252 546798178 856258506 679946852 537668999 102161984 798931518 13965564 266600312 18056504 45449375 729523456 283311461 493258570 867127085 519622009 848764201 943713380 310034311 661076020 477020448 501311785 560655938 975635875 684507868 568753854 631534056 198973495 434071012 718674718 445934159 441991715 519195263 573912235 981671378 155288321 282855190 511320092 359725270 985241101 56229464 560595513 404088559 697172236 286603101 618984183 95853890 873871522 227955908 512993020 829785209 432424294 618154233 731204765 914892305 253282695 406349355 541715804 16512229 862066801 28020154 323706461 988699156 942774515 351603460 656792712 280735895 692004377 186751296 786852254 797794903 105551263 804945568 72082 794690317 148043008 878344776 397977748 801710855 960574850 379729359 431193977 881686610 788526922 67586156 440034007 6340756 919127006 887413986 884730922 103382339 984781396 102016419 943163600 105835960 580025850 18746817 951211481 772394220 342654638 117800400 730057961 42321431 39951824 76415215 29251176 289039036 582782480 362192294 921614459 381087618 792863103 229248515 462923168 338211269 670474457 309506459 193266785 523123545 976836673 586950702 151916214 8446240 280748734 579964621 973001003 826283730 57595744 796024466 894419221 374778152 829845991 967825483 141796905 430378415 619017319 166352108 521021105 631161488 75017342 322104958 814177582 630286648 744378825 623387982 29946959 170581915 408461563 891036455 218175623 367906240 486234832 561068697 759116914 612443462 606136038 466872826 880753738 634807282 974048803 498433330 615817091 260477624 448099030 897701440 805818790 636896048 212619342 710658167 356236375 783220386 723819807 854589878 688122011 729187770 772683967 831941687 226200142 686543427 952156351 496561942 961695792 194498446 435547854 600573094 580863548 903850540 297023977 80609036 164892531 860234711 808290038 659753329 305723112 544878193 474907812 172811865 774797340 899740075 609399252 677556635 524049633 828475147 701433571 836387716 602685565 417616505 89369507 17859469 569525215 444174105 254726341 856447857 575740322 186835747 758650465 915365000 838537017 694894025 420314748 575339569 598568484 275473769 864471181 922419950 421921511 169807323 561041618 965290996 728577862 52979484 202350999 149494447 355951882 623941895 240463437 415671637 806365322 287668198 539613000 149285490 151038233 458907303 156786055 115875245 426090121 636170858 151372381 567390737 351097737 564153814 849184953 35955169 822133115 780772521 531945299 750550560 699023882 24426735 910321783 539435899 44422714 336971955 344116155 621075206 179189138 634241769 571826056 401517548 238892195 606415836 930885570 591426812 999649298 115632724 419324247 771477221 336141254 495299349 911809810 505489938 830675613 648209062 23754863 234286449 367578894 770304097 30835066 848891520 812521185 184185832 976049630 63862589 422476088 5409185 183945625 273783720 542393256 595396174 606198323 375791271 818471017 510721485 35999677 675369202 524521922 330182843 101962543 935582668 34977703 998689315 64463632 79254510 774864498 490140977 840827004 64921103 563163270 183083642 955270993 667561856 225849176 289149890 508801215 409726815 734779847 769655949 867934183 490393227 163287294 694596503 370668132 3346690 618959629 149257716 875474444 981220667 169666140 298710053 168655051 416194166 528003805 206681683 347150501 857382982 500978145 856624625 583584580 907265184 839176090 674824536 808074717 341811051 656987471 178058081 146005474 229677034 761734353 235625258 499503471 884539877 370493659 243476505 993696380 532642867 292376085 765879425 352903268 913334818 435737531 917641759 247943860 345113696 58345115 235518847 453343229 415313382 302962482 586809952 524729165 444082302 404417558 428074557 159133071 21005452 913006013 831868582 262727832 305449481 806621896 645016841 144935494 169625873 135383325 774045685 700614938 835453447 534549241 751697243 873666948 231442012 10710906 508257825 673192016 809282757 688429711 197258590 946168489 294042939 448198493 524220064 728392112 659839796 288588020 708671191 194233341 48308741 816153495 663121731 188292813 115667101 21123157 318238602 125486055 68121935 428127445 661749674 811967721 465525446 681286877 482677347 722681580 19088808 299341371 215355172 152107209 782264146 577952539 41787756 632469717 840846841 63736580 291718885 35719161 878206347 362525560 695939234 820486108 22363901 226267559 107521224 871658332 41860303 613673375 287424508 989330144 97222582 63819411 505526241 980254661 906184514 198748171 581201081 166869512 992647572 364116861 630776421 849898317 300455218 577536493 754253654 17690971 424760158 160956373 563628938 208212092 535669486 196048831 994391881 241954522 95229036 387199333 401667323 339317938 168248693 241463145 757904807 316912983 569469801 645803246 618605762 14865116 922911572 644326016 647286043 527639911 489337217 685974016 875145111 439772108 110481183 447026339 717589679 758729177 717155966 538871658 643093132 424709271 773552408 805976075 691494865 922855846 195039478 311082205 564038481 243676259 134206575 709606947 357328897 375917307 334183386 42904551 348138894 676542057 576596941 142621657 398405328 227953210 829766856 145487238 429121671 693877397 537024134 613589222 705649067 205483867 997657867 318439084 143155426 24449571 902158978 147676814 426485320 679067861 594682718 204119613 52003818 326018393 395978711 896325233 944473726 293457769 432996314 354745288 715346177 432649466 305940047 159074039 834161523 822098239 897126629 24096870 632062980 771246609 655399039 577337674 677139439 184715660 112131406 460982 245437048 93085374 319248040 598687567 320759482 304398651 508716907 780368329 957211725 612662442 336164792 457785594 736171228 198046330 561827297 97588080 345573349 956041329 521891715 541903363 115316255 169234488 337263933 945069666 879289373 220333910 175277045 474581459 872575066 41443974 987171458 841133342 57433392 746735159 406912491 531759289 910449449 157521464 760398976 645793364 779194080 110540398 92951323 349312841 209131736 652821574 216682733 238970837 272679180 820773598 97544695 468369304 433755908 412723369 844486775 89330917 194355705 351315268 833987353 273669185 100061049 567949314 123289816 843099263 521743464 711910396 473090318 811354711 910689818 399434133 690057004 900044285 564890417 521029528 261556340 177800915 725234739 134008259 136758465 727568694 623626070 342192021 541498473 512372064 942964340 552947301 590292614 603549308 972204279 173899867 316696273 659914363 153095940 648859987 18409585 441578629 324712092 54376629 795050931 734185678 527973855 60883259 752722574 43126067 263049568 192091836 988462023 829967930 5150206 40575950 229785156 39753952 798745822 533027052 56942513 476471861 919732681 494775509 192310110 806930825 900691071 473022838 78664453 310729572 607138200 401234248 543382220 722160879 402288015 659206872 186011573 656290499 789200831 219653267 403328341 283471448 68903143 884635070 926973472 543212261 744862447 581347139 699593727 762623249 315196181 928145834 572381213 482605183 327819220 660901981 692035511 695946063 436582559 199578638 977092918 44997629 346219749 117409653 633899528 138192805 89484108 666194383 27804232 46121315 807396605 649859058 884918214 909524054 439951989 989901501 75636865 705686454 177522121 3463988 798223142 849510274 632391149 987425477 331569837 255959228 831037725 607652338 79403824 785541682 321555145 762948174 868194009 494143605 224089852 957056094 9391691 953589894 877821784 262677675 495353830 722536671 160324850 813477280 605322463 884326896 175837745 485998142 114709469 887135896 282448675 965256984 10480857 733001416 604139773 719139877 921107837 579416527 488486495 762510786 907606028 867373644 797635038 761481706 456776474 222846877 728646966 772649977 160313188 786716490 755159226 797587081 169943244 565337942 222646783 463961615 441945094 374664492 183156132 277789988 745454551 108644744 334375737 456143946 44945503 712516961 137670722 119123369 373328451 935812822 865072398 33905747 609919631 960578696 958500215 453030589 906832162 871619149 461500664 73966758 542705928 147614612 924820560 607047882 306633414 781451136 930098702 266720767 430666616 334659327 516580126 887315561 797780158 697033877 194775616 614518463 875466002 815467580 233881614 663345727 452582347 796314129 251255931 717767909 361996389 479666104 382403422 966746495 644724289 925100992 80898057 250755483 555758839 48699307 177607722 914271566 204500695 217752020 141693169 407496326 34290844 828353363 838971977 432781400 567267583 650058505 663493393 747243490 694232785 118802514 794333216 947843527 977647323 148280371 327969145 105432941 258768231 979579799 390643088 395697764 604913938 436921235 152272016 198223937 728000483 106849394 377362836 441558566 469959398 443840100 470375297 259112465 911215075 172292959 387616761 317867884 489404183 204801558 926923455 446269570 521610834 295754463 155400646 475149207 391489065 594448793 338703171 896450467 536002477 48258540 859893540 121202298 693643704 548862662 424103953 594900260 936883701 205036186 480383586 834221600 402336122 595824581 949412758 561807644 259496944 803819685 17116287 702775422 626227817 626364689 870736920 846747351 761672328 332961560 457291854 7339537 160154806 956068105 988580817 480845941 152043869 796074699 560872120 266904583 753243325 612726397 432056327 619119899 519250765 902781035 957192372 10855628 266798056 181298861 133567488 933382073 317668015 321772016 510232983 189347607 937472667 828603967 588386294 824379711 645129358 938725144 372609660 2567661 977350733 325849103 168034235 561764475 225552335 294241612 622996061 422693909 588395669 95860185 827837059 494514645 514884155 775334861 535716860 54457153 344610021 888469681 427623035 187104228 286592485 110747498 529303195 277080732 277203121 896252465 712800820 634373437 655834721 398495590 840389755 181455688 577355855 945869567 727659141 476738414 894766313 592965800 599018454 212939428 371140780 5809345 928138579 164002363 390596016 288454320 450237484 286078516 72412600 689057631 733866839 59912940 644716171 43593745 348162568 386800445 564656420 234885983 509104477 899919522 230340944 348727925 399219104 948904239 920972074 732228416 654962009 904910325 309672609 883421092 799465501 954777447 638734747 617018634 842106255 625227986 449158950 636983266 629853581 746811930 895020735 703145666 665302736 608293444 538697017 842356500 200428334 143885257 552248542 769831017 91725860 6958149 417736464 789300422 270846316 542876179 511174073 692403838 664115895 277157249 345243838 685569685 719492702 755176917 430492845 312307868 350342076 170362377 276633014 324279432 997115816 110401193 879207666 39259482 123985772 604697134 637156819 700125894 720319293 719845854 438309989 542125428 204529771 999762228 500088328 555412168 780377857 124922906 738844139 467685741 461924809 237046277 120689269 568571220 906219298 846623009 841242060 468549718 134160893 432046299 156504406 885386988 596328080 38651927 794135309 294814220 208090266 298321780 470806740 58979216 5225595 482254101 665519988 212247040 438302198 294980505 787968748 841640230 553811691 484705315 879374256 262312811 451490824 906418568 598201679 653403853 851105946 796075575 499105962 258008694 501842700 753496962 926989379 498055440 244588672 805609907 98821737 231589615 902061037 126882640 571894200 547077041 653394491 163196908 750050738 263553725 408542950 87882341 237834836 800091942 85482342 202377316 244922856 869091234 532404572 960334732 942790546 403328708 565781846 185388015 94682644 544426985 477284358 42221767 752028763 745808848 110254566 917266482 922139919 949753897 116323988 884644861 403911485 794610497 188455745 425636262 599742567 907281780 43581038 83057094 514282373 558726251 435416997 160364413 131017684 870433646 803422023 255789101 435350157 872525189 320563257 81591285 768675428 815452105 439569999 273559989 298282589 387484251 271083088 955640040 955215659 105730182 554267589 823278134 349748981 39002699 977605635 479448375 654338035 305547545 32163573 188477764 85156029 337757272 227180287 332488297 602629235 623106583 963892612 99155486 886544833 138951723 473503584 628823504 483367459 470503340 920290396 298991696 665639451 110787720 728444235 502937402 167227207 624063870 722891094 265653129 763819122 385429593 241793065 674615242 532347677 120957329 748596953 401227074 980260783 510342521 208228650 10164280 375114076 281635679 446509827 249801532 700911761 753973206 799203684 230662428 828607912 279368580 645436073 814946412 826161502 701099033 309854880 599855790 606665849 838878809 563838625 743709021 287782607 152289425 300700786 843808809 48792491 5039322 412923913 225114836 550680175 124913980 754199808 15642585 989444481 596415473 964178859 776625442 589693938 30270043 287306475 539907418 849841180 809501893 732428407 957489584 105284519 247248173 744075916 401146700 47573039 917351917 438367006 228118835 391741999 282478323 607540415 69899711 915043634 177941958 936550824 873256937 550689398 249657069 951188351 511431779 805230601 234769286 821988421 2610158 929877250 164197915 117890600 48516938 36685610 470778067 665596171 265917158 835529956 807181912 83375906 551794235 376437911 552568785 492785676 296420371 311674453 213261563 860448288 77557154 973374072 989181832 837781625 149280062 275142631 826154810 274012925 112199499 408268040 936780300 232307929 425685489 739069832 299120106 652110402 625359183 819869599 381032060 593416416 859224934 840765589 202598138 684800315 694599603 505459291 703454087 889921647 467606289 247791323 220527528 231955542 446657157 986473246 955366483 500835193 502640227 150470787 361107489 576629553 50431863 420367651 723232725 245359845 987074263 218616786 1842445 620413953 343206910 978989022 100323647 717871906 80750250 333069897 181497495 816485751 694935435 324714462 438192161 444058662 182730972 311756177 826656981 95100811 788535938 570441984 73139597 890455434 525508539 523875330 833977359 201161777 1522113 978877148 223111106 563679428 114525424 427953762 775541201 164994078 234308595 460108770 384754066 952080157 551712818 637812834 65234374 387862504 181800424 947784125 306649197 867072269 600745481 243813855 239985911 497937613 866492063 321814399 763032423 33640706 751197673 8689317 952919393 851999079 982286191 70575220 368115303 699978819 499052487 391963108 721824529 939230672 475233724 569491653 898919473 974273275 338501050 450958408 530556227 426935302 749988883 927242954 996301320 864717442 984494870 627055569 491967852 578373780 170699988 355593612 283762524 24295923 455102536 401401299 84764667 724234989 186866275 224922333 803893070 863954299 29873014 1221612 912766260 940368724 250607049 466605337 278107750 985893982 274011897 785529821 709469067 99988208 414340375 154987958 910483403 178855184 438573737 525039155 248953903 891110591 306026949 689092682 89250032 600968060 220992015 520949895 155414301 900480615 322237650 373781643 234734528 201921040 277972086 282613301 505326570 660740833 356312136 264463198 610129263 253473146 523548803 73257905 859802248 592984039 146966176 801078295 708833434 968381864 67324156 343749902 183144231 421373494 287142578 172487649 944573474 814235713 481238322 683143861 470709895 320381729 774849507 485904416 925687312 732893021 643246680 302069837 30684447 876870925 440203606 231032082 975462643 807145547 151084782 625074828 402443388 677845901 510127335 699037969 901558715 988296348 615582051 511006797 624439198 852030309 772192896 555323868 230324979 896162125 615303991 315932578 575124232 501505351 932126197 9342958 696305112 809309433 544214484 757401140 334331609 397605114 951540850 286883851 771136231 529053840 674315753 56423501 606714386 986160531 491982244 153870812 37050601 898274364 163902246 111592975 222114002 963117408 178769379 798410638 119648297 400761818 599797438 608443201 776557853 100223540 801482180 502832054 511992373 168248857 291046280 127149666 651573621 802005583 949331243 114413396 595275988 340855485 161692676 111504227 571031936 12144185 102910025 515303956 447515101 254495280 709181702 541299530 888717096 619003052 521317419 681474818 59220457 407612056 534757829 228747852 473857757 433119384 912669305 389054488 185849652 178438096 838691175 541350256 585896135 181146952 579588746 67741893 940143675 308927632 587537826 426468770 693907795 182825495 820461058 568321817 362358632 426572330 64587043 849352432 659456553 181707246 681478509 977243994 61777172 594774091 847063363 44690878 149752949 611007103 433103262 50794560 971291361 421343915 972664582 75417574 292202492 396330596 847991153 700596447 405214270 171823076 984496090 832262492 678114532 214276202 792924583 122334390 502428772 910557473 610458610 866501229 994945728 328417005 137673840 242433074 454088913 582129317 23100424 381510507 372545384 606531377 972704505 637750683 912539870 553606789 602618773 389234423 808231111 649056397 12427820 939239372 131043676 884044490 74665354 85417745 565633326 17939067 853048597 293496087 425956279 599906100 986074560 397423963 913747645 262512743 977091959 283063568 41349811 100526690 425699894 582085711 632893024 915010330 451355763 168263343 5403921 183650910 868486480 283600647 678262604 147647973 734501338 866763967 774337506 803836613 469763003 475363930 11694504 706401685 74917506 480030842 944439789 935997960 464591619 833728022 5686124 278796085 548072407 989048446 729282233 989136821 487984097 688076488 872226697 703324943 775379925 821764209 535687542 600538723 35991685 826389004 847653198 73016074 974005444 73465482 572349378 811061999 763982562 899252347 353933001 5300044 511686867 164837071 654093588 91920603 359261366 510727718 392171675 210201596 683942050 500506914 490766836 780004216 532724334 132790589 557472897 621630575 652107025 136681923 241788070 19459738 523955709 376757677 968469744 259474467 291193008 155046368 746801254 121062531 330086968 599757239 403666794 281854404 153367798 225206002 874966900 390180095 65299794 668096621 737949570 611121804 369449174 81710792 843608718 884435489 448995814 140189383 922674198 31640953 744815541 492690285 906594925 483033315 185473893 885502023 913079357 883177560 169250819 305041639 89261791 593049404 834715857 159969000 719904627 253084182 822658384 578599650 327065883 604212315 511996241 765661862 501114813 32450385 633533927 572079054 971147971 399481450 848519052 104395736 766960395 219939607 391089531 212208537 792076492 983285904 82261559 348276066 404712826 789440092 949593753 543745454 659015456 417064114 278660595 348417644 301277385 54507541 842272644 841637208 963176186 480014321 676856845 271173629 693574684 753104003 425003615 534552489 856240095 262211728 647242221 942464283 473412560 298659620 996697414 352282805 913145487 362383748 215501964 69353016 472609313 560837561 985429645 725326518 636356832 16261639 1646591 430877622 938469289 704266784 674135879 472448256 969532482 824012509 107602193 296628291 519192368 817081246 951648934 575651510 609257034 56042047 956401105 246933927 475342577 512908528 476708229 980108792 10197215 847569385 222361968 337529134 459217774 423187869 629301159 552212543 436696981 126321863 755609565 241127227 259054871 958040608 102317927 720116777 11399104 583834253 199911991 833055058 606476945 158892265 757537129 101198951 93682856 159332146 566980521 540212792 843579730 751364297 489042129 894366123 676886926 495982235 379362102 263565859 765039232 881053183 801255086 562574496 758050810 31601128 858040035 886773444 865429667 246703030 589320420 902455168 279543668 941552175 34163607 117428676 30617419 953609804 257867261 794957778 308755995 773099839 66192209 285092166 20574200 37500136 790369638 703050629 27842910 17163138 382873050 413375807 671023429 255308720 369032749 611014633 59744813 618535220 7416673 139993649 869805128 260499187 862883821 268739450 553637584 941384929 471099017 583370674 262908214 995412793 194007719 508886000 595189088 516435779 704139056 524128243 293971775 545654354 265781902 358950165 147597988 497148038 784325799 752853859 664994235 80882629 102089863 309817448 24847017 981285350 970193319 589788779 702737689 792377291 358154346 815556346 167010579 403512793 808917291 858531383 55534671 424684036 849339912 568091782 467665379 20386453 174921368 120470502 568767475 480455518 523809461 151829591 135206252 140717997 382315202 710765520 412370415 420780537 70513804 357868555 692885142 201300715 324873233 81663147 387400895 896970905 450600811 69169971 288056685 350308635 495545335 237767490 532880996 194526059 32852068 387350414 369315930 217496302 978841502 524746043 552429172 738662673 873540008 173844633 391125279 926064562 655067090 922856403 53124158 331577695 359354726 720487400 375635213 783876591 560902397 207529998 94287716 264559117 593426258 520672966 14139194 770790577 856682423 837403423 715475363 902383855 190799397 252182275 680817469 467810558 967301686 191674019 248078015 704830011 8665157 345387198 508952077 754649313 634432926 930022413 590440884 807581655 116280109 318055308 547827392 641092475 237172447 427153203 333648012 308408366 511588994 628520234 394103196 442860025 779266331 55082791 965525905 956888015 704837660 551161356 579616607 141452612 835282344 624924950 512586707 228546086 625447749 707229073 695790897 8936213 392912621 591557050 128150142 717721935 711847457 265852044 368456131 396069108 906015637 624721241 635565376 841484634 361234743 929650666 202614829 210333303 406431050 843578174 720539378 98043571 557075802 34469226 738264680 365304192 544018610 779248779 317091392 941182299 925080790 357991711 658096957 883148738 278588282 322890809 591389218 346785120 881396233 972235911 157702673 946020933 496899491 417063933 703597638 780866949 327785910 136501969 630115873 277798614 109871182 331013785 343939825 285988370 376028948 377293228 635034567 37329733 757125200 644986863 250389541 813094369 938135809 696029723 905697251 346431507 832094343 315686162 251810215 811360749 198610812 308807472 449611757 987508797 907570013 506151157 431747709 589048820 201285821 883587025 32743983 730325425 720172301 504232769 227246705 715056961 615658141 188230182 506000017 190435160 345291842 782723031 617505343 684226046 394926445 304938952 549881954 765492713 151756274 436470077 959794754 830121210 662542828 555991683 390737312 332394152 451846051 164043256 565006300 201187701 929421967 228769537 835182316 514985373 307562933 855127493 126160946 78552212 46570882 96649709 738619535 629832432 449318179 56924029 491880461 209079610 63736858 887959301 737301953 477506232 65903505 718299949 311845030 976753198 736599048 198793791 621740219 135393741 615002007 569940237 739189937 204483343 805915240 325635809 877398416 103429919 973151667 397935991 367587754 844821066 169885270 78585175 674118278 491182362 122537499 602680940 584839839 262099203 249912882 442142477 667948218 490320208 12916509 496409054 777804771 819939767 469192481 33658910 563881778 799142051 902389226 37769816 821838796 492074656 80624318 200455258 562246007 552414139 280853011 189780695 331399858 270233422 380151344 643520611 555851787 433600916 430802480 438038213 612497832 312464273 300381376 96864715 278526894 673102351 13168980 522273207 84631516 971994685 425546383 544455499 46910091 890188404 238034302 839258017 64466251 938942886 754379570 820378992 618387186 450795532 387294931 832056757 139312871 958461716 448964614 739281190 587994374 717129319 243336152 577933987 221775527 695441358 236397537 516711442 936947718 601584123 587291344 937909154 320049045 466388934 538992362 351905544 441344406 78052791 904203785 622431245 196240891 407773090 511069269 129068943 674492773 146782511 579819905 716327959 171172228 852096645 184095722 413657290 969141790 379337897 895519064 316988812 175658987 156483990 600730353 293884468 439250857 394290484 826995622 238542932 28023351 393578493 848122550 985752616 373592491 877353889 133084926 888260299 665629136 866330343 550137572 182316691 546452433 951298090 449050796 418583786 494703753 726952380 582354010 622338719 735456471 840092086 454095075 659562341 302301899 425804161 902548977 704226161 204772419 261248717 24270895 915919501 731453918 296189470 212711566 991921465 903119306 425119152 223324846 739420282 703701757 413491254 523854225 162730349 660872498 794430392 646794197 68777108 33585858 144442319 251498619 514370021 833144707 128738107 385203814 501516788 405573651 892180017 698959303 137170998 825861429 855591641 373461698 381963733 722949636 869732017 825474778 388034587 871078328 495674052 504040552 731474775 913201708 783652013 781567110 393403000 459227144 454210523 338826993 100485551 621322547 651123081 731284074 474926146 236617973 662658217 201215056 355337052 496099788 968445552 674287266 843572128 990158133 391141433 512381271 42953209 16838303 478039231 519642400 52859687 517064616 444510440 219697131 829492651 785332199 866129004 126210046 74630899 567751354 14682131 494637699 381089579 656264847 747238638 75813297 730026004 425006929 300146636 755243280 354214192 336001737 940328997 436033562 766673062 856298936 979950384 984373184 400496246 491802237 806494926 973596234 544032937 705537108 996128553 533366762 955885495 286768884 664059759 130227679 942491560 2237090 71267897 743464540 972803961 243314713 664301337 554625277 577840652 460702665 799040781 868132823 346114879 670514468 819068914 540742444 228548835 934001112 833711418 220001690 484075112 552625087 258942501 744865039 882057645 578544498 577008766 97692805 11378120 949137501 899016695 645101830 420084218 154827810 399662085 254693944 414754833 70793976 71605279 957622269 70457573 710264383 636912245 981769397 398617243 129498037 620255026 690156564 527563855 987897779 467734966 862575628 976535124 880396403 751018074 239830886 529699028 657039032 250703554 772493236 9633464 271030652 288323918 547666213 546710059 38717293 337726619 619347436 884083821 750670514 477509828 481368637 557860178 221862594 218609181 785407439 629659088 229237266 868388218 934922808 108996583 179420479 866855099 581285009 429918799 669965303 813593463 385731747 150802675 939626272 895539394 768893923 139763806 901588396 191319879 950160286 701993854 38681460 411560594 310864159 78477984 610938115 882941633 108115079 277426271 24882590 756466400 781898088 142698207 982714194 204412784 452370967 869091324 286906883 573424059 181435770 475670094 690374717 599024638 405813139 382775506 83855987 297105074 562754566 487304673 517175760 669880228 69165125 5012508 116402189 227060154 641702762 604291799 874153160 481654546 984452895 79157326 547792248 173958596 69651082 359170338 832682891 461066499 261516779 791964012 514738992 642138778 987934713 602975137 516204534 879332523 262707676 165940213 208169076 317176328 130264154 741144849 138080729 734859320 396470415 90211091 427325609 367030749 498239622 213106932 525026722 638366201 727272002 922022299 563969480 905634193 89848222 311282628 776068981 29062482 392301993 390220002 10922982 448337071 919628391 970206308 581114032 244697809 730424190 535148985 759601550 463893772 924271057 171865789 392663525 395956666 551438316 197115985 22165530 743944786 325054038 625155098 114085013 753025533 904013382 385111935 511228850 136212307 882068459 735733216 462421477 726569994 428980928 19323593 293937777 611634125 742698906 610814283 489356709 514349467 875367400 555369790 728211112 205409182 167433436 300611467 882661005 36025000 634450379 177763191 388751179 714593939 28425493 179530856 928925363 705726923 381600594 877028776 649826058 689593524 507180476 860825718 431168744 619206083 867885257 748275492 439550127 147672754 404961885 850201019 466146973 452004056 880663874 886100567 737707754 416909131 975128885 322075733 922829550 755018007 78668733 650445268 208965173 950450746 746233575 418931291 513641779 46856377 724322998 205569696 935263859 157539121 227322691 913519905 853171382 461316990 461347511 634010281 44493182 681791230 473196585 12757051 822549454 388547824 124571766 948955157 960542607 944799316 70592547 95001251 583171252 731087266 604752425 257040462 576218559 203221393 124160828 997634974 679329648 250609115 487129264 870506955 881135831 127638708 859362196 419742568 777733289 971257725 650654712 522714463 688876228 851814440 973422861 8020634 778599121 262369162 440395050 928274768 816877934 32958089 530945556 520313053 436813854 414632745 683825277 583728550 805164327 275308723 711607517 996457350 583285084 915962904 447364248 491425287 370292795 399491240 370100928 149432548 422755168 779991399 579855656 650349268 131846999 559294345 471495 528375960 655057029 958173363 529064031 422389517 383759935 36337227 668184446 926759527 948927001 679817619 989644141 274933550 62425222 618204333 237566767 460510196 811594804 70176560 749928175 199629002 184957723 734973768 305128616 853287773 485439478 275799222 113274381 450083407 610451267 880695219 325428015 572548394 271209021 78596497 198448942 732211211 588274327 776190614 892294205 823984220 851418005 615092849 814728872 925155761 307319372 453610166 286050032 746956020 147154920 810141572 568422470 597224286 87036151 923531388 188057841 910604487 358249227 179133885 630017749 791720482 144135909 21236665 395879884 486238897 376644528 491324027 283072926 444659348 114103358 383997908 94219212 842855369 711228718 612337559 801079401 140413026 205130123 172268144 457919227 331500793 278958252 385461479 670529074 829757580 324029277 62484894 924787432 59483177 421327555 778963985 193403069 648401178 892695680 159591861 648695140 33215095 755900423 997566875 751427920 905738372 823513363 765891627 700441086 280084039 484335203 837818418 966654570 714801545 963184046 176624578 963036616 390540418 637078137 83950649 586985430 439051580 902491772 881745570 503896713 570100667 226305599 798886073 659475641 498826498 650537995 996369153 960116866 95159903 897983896 811422487 276931822 448200017 498643597 318687595 89678895 723549111 543752507 643873465 769059985 265670745 637005234 866557367 455739208 238065222 196236628 451636497 815555819 687257939 232617057 756087259 761330473 559162896 537330479 874840666 629453940 568351050 409367375 505979454 366103768 233257775 242805403 206561563 676296541 42991396 879625993 37099742 358213438 920033780 432115655 252898452 394511400 437491780 248028207 353679578 418399917 367235545 627508341 830495127 595201011 721614888 268536043 312985592 153261969 943441220 996191674 917610670 695277606 103774210 448164008 787926232 7120071 502489319 105136893 672254835 401929289 405557424 857011354 627005257 516348538 945944874 140092981 891661581 869728170 701175379 970823150 440783805 181190128 150594045 293175609 765915510 253777631 365064663 131285516 604497646 333652631 72484782 265720262 638062648 583112574 305792948 830811386 613269082 512710359 996580545 796526434 634934774 272889130 213854334 33746410 389290894 855779022 782977139 73098748 137543929 787475898 272282337 44187684 77333291 848803854 235520436 857162394 140808049 87817673 626414556 176504279 341049788 752382017 27494577 696955087 128136627 888700108 145670072 471400723 691785843 437724852 219268130 675021663 721383469 737480943 23175170 514926373 209119061 492388294 425116522 503658842 483833941 832461725 938045826 720915948 718054297 919111387 722182667 519463813 852739282 86074314 268876161 145485750 103805991 845346509 410164634 30128618 326816114 792470842 928603941 775072279 456628578 153474546 395900538 362033200 211546919 884146780 768776964 173765435 549767969 715628729 688099454 97429320 755405773 702758515 492824055 663935659 6731826 559543440 813105867 563358973 726251085 813125733 969343717 614029263 905914497 22704522 516974782 167334600 348137311 692128934 929491997 69163735 891038855 255677193 608663981 984844161 49269767 146539905 297582812 71390347 919099279 577557853 289601782 918415976 851169762 347777045 895217470 934629159 194561422 30737323 419235043 851692851 574658305 342984533 375197264 911283641 239187424 841711508 873848584 260127923 376365947 482390833 212014440 428537308 230654667 486224357 721759368 683980027 120750850 994851795 890615389 160469911 526310566 321539040 990585289 372489209 277814483 975830281 47326710 833016089 843452817 843920592 297355529 49968410 244917034 530684084 858633858 49988971 143072340 869682363 657090899 374992432 535745043 572991382 518325567 39834942 361899313 677423435 729267781 250213226 109334306 742965271 300285468 861829326 940617963 603766176 178830799 802281899 836315376 483461449 598749546 124672446 835912952 136288103 509778051 614790307 97223673 207277768 319848874 43231509 553595464 401003367 374672103 215986819 324847975 360236349 871819086 186528440 95430984 254894205 437765451 207777544 187874193 295104283 391155899 572362868 171926574 948597669 389719927 766565529 948600654 983587007 161426149 604506316 137870082 216679965 479163317 813136218 944350181 994177432 977479954 149544336 653123146 251271244 582009158 491365412 972243180 423870677 146600580 758909352 713012365 173947235 411240472 928112234 428965296 630176813 505557367 194012978 357087773 133885369 983419813 573678671 63017749 268574819 74144751 716436532 500192039 928055444 386163299 73932090 99277454 337158177 51049885 46770676 782279404 736162645 825536089 148809790 972441905 560363376 26694911 690554120 486676327 305859927 988989860 609601992 79430181 320421181 694434056 293763930 821352966 401678823 643474016 687917081 482261251 285629803 975975792 529252153 925896543 111412317 106458155 650801048 204321038 935268710 367380032 320694631 792142090 609045131 744245541 531166814 826841683 84846016 14296148 948724541 206572734 346557559 191411533 260233778 899721371 484477942 638299895 368084877 171526962 53554321 414246362 54097063 679578100 297216701 144815383 215872522 340068691 448166312 159887644 549376396 45730855 350222479 355816525 501899709 250039467 230995016 282157819 755459891 669043023 381440467 718241245 309511596 38411797 955907697 887806190 20121089 887070475 964144154 367085271 175632181 323732227 815222511 706382912 276091847 631031746 839992156 680140012 542472831 303487131 306037252 74623803 269424791 39900135 701895290 989720321 307183535 228599350 972999329 808078726 170376392 209777045 370234247 913575270 356370957 474727861 653933438 68436618 929790561 437116452 943429861 221630593 131653806 178374747 545053341 448171919 787892 213574375 103016119 815650821 145128040 552726576 168707096 692384549 746058634 289020436 318069323 822802144 24415281 307571367 357870378 33645700 464943684 280805674 726304612 793142439 766887962 447541178 225383857 596298327 439473666 808854881 235423205 393577087 204167732 241910040 192197760 215615373 988255171 472113550 23815875 785705612 572818339 305442746 113666684 340615796 584730809 151630092 209348745 178809210 524636048 235226895 879377912 222477150 785361652 750382604 41804355 464017007 255490278 898564071 535645008 32588233 203136479 737460439 578464988 96561705 758741104 528375299 409961111 353199730 467712267 280646557 479246583 570906545 381258732 511696226 893472095 834871575 689705623 366186578 370343691 90195595 434835655 433032231 185371186 760031743 550331963 864301119 859317927 868907297 465417687 343369179 218057509 726568632 158197341 417099762 739261487 723775879 182328027 707478347 89215149 924262827 544088156 740354097 548573438 819092183 772810037 895060638 946280393 263466548 948627679 821333993 869970149 552406423 744802978 178087853 914516842 817767017 121095022 870970220 668721006 871808266 253127050 390055515 446686329 189425062 384553446 987634920 645741529 772190451 641114672 864300515 34498725 254647556 932161638 604835936 332350978 155570881 2265052 256360990 412294508 733079634 270943659 847588520 224883688 916166371 762116746 337379125 255174055 697123906 63348207 390008791 738932715 980681160 152717788 785573746 667439239 44119072 678036300 414224073 640817807 69677919 59112657 53002967 899128165 640915678 964218327 614430827 410245373 948538654 722361829 58314990 527620404 275692046 183096246 286669191 96493424 855696799 705801764 161275068 416774184 272939079 673571234 363557028 759700993 404393704 825147382 543644461 377332626 521230343 173301112 562296843 631646912 482051436 960791140 684811586 536238248 797608443 500182735 846318926 672759365 72893839 37031843 619419617 77094639 457136113 17848272 372198285 70748220 49392952 957954153 556920293 539856940 79082739 574358244 667502547 144472379 511234280 646894345 931506149 639522378 15476596 326528379 799556970 654625019 64210987 329470752 203835753 343917583 80602737 996369783 543054722 146989392 752823620 89819103 510555874 793165057 39494049 256100823 272379161 911334261 625159608 160345438 726581719 233615870 580505305 426018451 399467302 843307025 839627136 638067308 349211147 249697750 571092463 596809500 113168380 394268712 773429218 904875482 937945640 715794287 163323102 989744603 520080626 218400286 40840647 44173557 461964481 528695631 991181152 997578014 111064876 313678215 611495594 264461228 712840006 886669049 842874974 592607924 673743552 646315233 621768918 853019408 868017712 557762560 582855166 972370521 801378341 602105480 260090079 814405282 867499359 932419455 3385409 228898082 331884253 800677568 902255784 925857999 71905006 39795830 615898604 47618316 835507322 775987698 293174558 232473708 897772644 701571602 218197316 565615650 853891020 294105958 688626288 311888194 102692008 708718578 537929751 484614830 2792280 896812115 209285394 99615732 700689850 73378961 882980629 729804963 625540561 926964528 768132764 728469760 154577683 95456774 871501564 671652586 432608697 518303509 424857963 810266212 150033717 702513138 317814077 957562738 561334560 205649093 640420325 524979614 342782144 469588944 268956292 537735334 832440619 624533924 845374964 665659063 170803346 617906692 380186389 477805619 331052911 69687118 624971074 120579236 156736075 177248751 218751301 57731315 271141575 306827507 543536641 153834151 349557071 786480506 744754832 68232328 217703428 59401119 928957194 58478799 987256511 48368186 852746725 50352716 214578055 459727291 998768782 168235896 866701186 620643617 400143998 968285029 176956793 343955344 309180488 818416909 391486971 851400473 723775095 539398522 947573394 775104475 54997802 804838410 236933077 650029772 931250283 447264846 911205871 507605111 34754175 181314240 597352210 159553463 115935024 164429958 17744499 774729493 424020501 737695390 448209024 111449233 95146251 795237405 853461000 649192772 374912593 612082554 629411868 241860340 554325029 880689553 959824338 306735939 764582108 337844801 269316184 709837500 882732965 711578481 162156344 495961767 728479217 401472294 262978520 291472824 417148848 285028890 523157180 835275588 855687530 311956874 286318850 964171448 71901556 46314060 851834216 62649569 435153679 293714658 346799251 472392390 542560266 618824165 349508506 952017291 579403514 219930075 715409694 989443502 101689405 829853987 465026430 106328713 820169630 63295327 734261323 598559903 792996299 708048969 286264628 133050143 628395596 138591680 939248137 295434879 600681682 570568670 142919757 441550128 144677597 885168399 424212577 498925547 875005646 88235336 986306129 78580226 575444528 246954620 60321637 908602716 804804413 830337011 859233299 172038602 355907432 892092466 391617739 443134096 122459649 179795262 664490414 672508798 473444841 751794090 615364003 467927952 958028894 942842262 400688568 151160829 54714593 468517954 207164455 160199350 704100820 549300657 873769399 295891516 53811422 2630057 95218677 762910952 642653895 808893497 207262355 792253622 123285111 779285747 859975092 103224182 146157010 799939924 672886278 222899988 325893233 187770623 298575362 956141187 817051741 275909221 329890713 405880577 32290657 667676639 194115621 485073835 265411334 770283166 610983864 506539631 9588167 911774516 694719919 299314207 735316531 332472415 88314723 564134663 975121231 952187272 9871900 288200218 395968243 312104507 566950732 890252690 977423953 990237491 327336323 774181272 406294790 593380570 216641081 274327189 319939347 872798482 348395943 687539127 227101794 487669983 196263077 714787657 171696836 552626231 407193379 658476897 385820934 566725756 93175802 569396598 374398676 316933204 60887140 163779159 187447795 825432110 824726216 633827043 790707596 411254881 593223792 457956697 180540943 940742483 633010617 299983857 940135437 176153489 315585102 372308333 833395274 175917444 613933675 112029878 638415194 340115217 340114263 446242199 447672518 119897967 502579563 851295849 343743268 448984476 175577359 457589981 759791660 980711784 669269175 27934987 549395388 804477081 407683041 452873297 776808234 359478612 605360253 344836545 479634713 547838980 445415281 716106963 104794061 894661877 827081926 28406358 427802378 455374010 745938509 885190704 25577666 407601448 773536076 936033548 301299576 551892712 468428696 912466032 705611360 228379717 502062214 291021210 723355794 294939548 952126298 250866205 729748925 16273463 286964695 379619626 918169458 934312195 738812657 91444397 513081853 411810252 729756967 491579822 778312558 55969414 43867249 814727755 100873937 84170511 699156235 121063802 749283213 223897181 908615591 138773868 552287780 508316853 978776164 609843329 404754043 393218528 104437601 462586736 530330144 365351320 467831666 938142857 795871579 714650168 509686767 335525892 725627419 299774989 420384747 481765174 873296253 937451143 898330761 309595454 138295742 540186939 74739529 598999058 559437715 205485130 854225455 100665498 971397179 504064850 519657996 643763479 109320569 531072101 963272108 676166027 793765176 447883851 251398457 754203405 391488385 494364508 68697252 418873895 316582365 840154633 121840233 682306325 520132499 711674957 904671809 314864926 631398047 962578821 373117280 533397677 755978925 132084665 861425056 781524876 455503273 920016689 424303560 731216193 2285046 684793025 175999569 385659498 646680187 324723296 307749453 805909072 244532565 144488261 826545902 500320723 962889507 743524979 430542904 466213784 292166643 99526450 349155777 381435532 892584159 383898854 17051296 612673659 429172985 888430157 673429966 652020335 676253017 518018786 903654842 158713231 125856341 916352448 613344489 34885786 617974085 643132195 770822623 764891015 600995595 993040395 141772837 68847579 639657330 526405289 777478388 873395482 778058245 693699948 931707395 439728516 862103008 751972533 906902602 901929907 550159626 832380266 56007578 414841736 396065863 851604743 236214661 965283636 620880414 715812953 666927727 577939127 464833256 811680414 346461693 482114667 63977333 274109663 880591386 76492279 597351087 910416832 709347542 731831905 666794204 113829046 634853118 713100508 201455832 285059892 945021030 315951828 717889223 46781947 188810532 781040845 546827991 420776321 60867040 113795005 72958559 160772256 805058835 246055979 647153915 668328371 210090648 533640370 128503393 808761522 302037609 197578567 290892269 755816989 634896500 745578738 694557733 511012641 240254612 410925304 686456523 221791551 787837547 956010160 114631470 31674134 16027782 348243240 440852610 837028477 855647096 385597545 63442752 314104247 356827618 933075505 594541205 165654056 84105670 435930089 805327831 912221914 893803030 242978209 54444799 676021537 679444185 505062833 489269653 187464260 969869543 507367906 434491231 891454954 165585953 767648871 321541285 330572767 491043995 793890234 426972855 537627585 891005813 594755420 938680878 968292944 481168058 415000732 396299303 186577220 759975629 399612411 723053575 201583109 864373103 517753125 408059098 81752537 311764055 824162838 303701188 455022241 706906979 663954691 880006074 765326672 285394441 902514516 433653340 829453001 216107429 200144236 585773680 928000544 501661532 397706724 895031745 131322749 791971732 488444040 628803810 694137893 308306738 137952004 544953710 680990155 915601690 452631766 480632720 344340913 974176437 210870311 905774374 552328379 238012007 641221929 73944909 586896120 233124662 76209125 395349992 989507188 245666671 213461136 238840809 789200248 395620459 203774812 882807268 250612599 202659680 429673698 133056273 552938311 929512143 68775281 889463179 188999033 529421116 540880839 830279555 578655577 985786957 670686722 289096411 447987846 133612299 483030679 621189838 544583577 297337774 631908108 323431413 281657517 189938059 731551245 495757723 760538854 333182199 257043844 353728273 355064981 461430611 728974571 281138421 690198168 246471360 807021199 301943710 934955842 895806070 460152787 642614098 812921903 941405066 311767889 639277991 349851415 809663869 414611444 926234766 928970809 646323138 212787169 119393995 94851457 956431605 219998747 749956112 252179492 173027409 405737012 872296824 467252259 408592723 980125431 18604383 701059656 4407977 636502162 474896379 474700102 574086167 29145155 868479147 120308122 558869262 23199814 941412900 67078470 758605782 701972828 187504368 108573512 746032017 774840071 468122844 437845872 700643162 576931142 9662405 746104954 225628706 916905614 406765829 996300451 661881481 198003311 355075650 771543496 266824428 5846527 295142293 602197602 843598138 298628082 332562266 322678901 99374568 643051170 27704687 151868216 145672361 68894986 11602880 186178832 16356759 399216553 254597885 209898339 152982135 770405211 473770262 467524152 685879689 582762960 573141152 681198479 351671296 32766320 571169174 282203017 671843694 858271019 395145017 280652956 403023315 872288644 236772807 210041878 262571504 126315401 755985721 48128463 348079487 123785135 361694475 978007270 181350710 199453310 121952031 424841475 612159342 310319036 356077392 576669197 432237245 151906691 872024308 743914723 420110715 981407891 422186270 290004489 957459142 326849858 770575455 137866730 80700563 738069494 183667814 734127832 449211678 984084352 613673823 130291293 667033969 974583165 749450443 499520175 447714143 251204698 217012625 756404234 427507543 60568900 486350182 808198880 695148667 504897891 713683249 829959590 395654875 152430828 589490366 388125266 758596007 743124425 576638210 4037415 989127083 75059055 530090629 454126199 372164300 306423304 772113503 863241399 158789372 480234274 603492419 835747434 238486547 793585977 910520658 198382405 354130991 711325895 918888943 787798005 170645698 741907468 15592347 638922282 104674103 140814635 189921625 994037864 656887753 491340330 617272163 623097920 261130857 86907933 34183637 251085644 642601615 882829877 120580882 338749498 98247416 846624232 249852301 148746646 621869143 889217630 998193788 653441916 612501937 358863018 777728332 766380626 233391410 575048184 164905183 261706398 133287521 693911946 207439361 944103290 580926573 345562749 437348084 228087510 548306458 812814322 134279177 306017334 405843609 628704375 217996526 95036110 778279369 352757806 81586393 779700727 17741180 925661716 100493431 17314944 604950166 201123407 638836555 433637906 791156153 670323024 845268141 960576401 465366245 147278028 948065805 727470016 274558732 281354584 631550820 817346862 2763377 871319250 772976671 59196824 954347367 938670835 842901950 225125056 51442428 796253580 432196633 332650647 112128915 318791750 358438898 10884886 641071481 755631168 893182870 922667280 840347300 556610585 663901789 421516818 184500038 889313168 82515817 732113794 170924656 949739983 925844194 698207074 322234294 314759806 819318807 116809643 671988107 303334551 642656152 40624740 678615060 542876778 417519735 74016803 572564365 196001846 10354837 345434469 44896311 726712046 248440032 209825620 836850887 258982653 749810412 494087546 269222979 522554469 602848354 956520446 480091306 506111371 329935848 727973208 612520581 77625882 807820908 648927009 135790678 245479198 93807530 234591145 859362169 544707515 690598454 282779258 173693900 234224089 208855178 250942067 855533474 704135527 666087202 411144708 250780970 717098422 506777901 861127024 565503305 983741695 227547521 436032023 871906858 494279747 410041685 662556140 289715323 237915476 233715655 716503374 248554016 621088896 609183751 615643620 526822204 209453329 423003803 533374925 189110241 447386370 918808780 641985613 564804092 552996796 37180917 593635033 192317889 981693273 314583607 10601149 357482931 149071173 665496575 674198240 339975152 251895744 773208956 368665216 888164235 633641716 251012865 240237228 968915296 48828407 110301272 39326303 905258897 143078716 941237653 792245482 857475076 180214648 154094353 910364313 662951711 439952788 850235586 268511900 602142532 12981586 808236548 791812567 430986525 376927194 609407189 781231624 711609652 479133708 551045549 59151439 827271961 68979348 889905148 219116739 305028096 573037212 395946996 295824076 47315601 123407661 566166638 933585195 762187851 396482190 745812410 101494459 112831537 181636463 469591251 355441323 43536750 722045847 589375095 994123511 430570143 936434647 854896775 660075848 138520379 527678161 272105308 617153732 441149520 787428244 218683143 325948815 73788695 418118907 457114635 268467547 860309375 716625755 394892664 181128721 820535419 836338038 952790298 800547887 536221207 813163648 741585347 173075689 603592864 241307994 410555023 367509537 636375337 496124124 367892048 317402917 426550986 935179496 637059861 369176727 230177957 337757584 491918917 457666865 889340340 65592320 996625512 100555404 103987749 953804472 366872791 962127403 930623331 106551223 595741556 123664252 770075613 44981384 912172645 118413595 26923882 77328208 427913524 193554146 39128109 119438200 400409141 419793548 526729852 834767030 275455465 822075774 40144402 865233096 715213732 142902907 928918562 219131668 585924296 397344535 2885013 557727027 195572857 274452379 983050621 634536822 526792464 507139497 242218383 612539279 689116701 997967699 125481225 639575010 71195793 579842065 501996152 273557028 509505335 623894951 73823276 33794505 14159301 76552765 35213695 9266036 158020114 307968952 123298821 742927040 830590642 657959946 54505298 20673731 329298088 305020524 835412915 829156912 211919429 664146339 15942844 403270814 867649164 934335844 374063348 625590379 819494881 581135530 491505511 417476381 665295499 288989592 111294700 85344458 978513725 10252981 484682407 229442227 327766811 795592072 943417105 871513326 705475727 267533371 982173110 948688242 397365260 355832180 703397376 16347432 704773729 677580641 421087826 447586748 336931388 518658774 949789442 488512437 962032322 71279789 388796508 478582654 628898283 409899097 798424639 616594521 895971058 15972042 716566554 796535699 743819435 924780202 402109125 948932790 230281286 109234262 616984500 582545527 645144310 416393092 557808867 848613572 14463597 858768648 809803464 503677036 790361575 1912168 326792330 892382114 461799445 235863878 291802843 834563553 82295548 159706216 508122485 398714661 770772758 5707598 881237053 502388912 411669608 477168758 598497704 104983751 311548686 896689497 4644600 343202363 422537751 121185990 357171720 156343090 336552174 48327323 682796859 268104799 330435933 70484113 619580200 597306340 378998108 322519050 769062868 963413272 826741316 612790460 117985965 542976166 586984563 508979164 524147412 739432453 692816042 17781786 577767468 959480913 422871891 106485157 812180317 584458126 851643332 559199204 545361155 901924337 898187934 184295837 100004969 509324656 606881220 140815668 603872453 363029159 279469165 45824453 263469003 683240600 956103046 786265563 324316225 566196991 810752841 442508343 570514484 23056492 495198772 589906413 275029724 545661574 935006839 798472352 522565694 867245942 172033500 105717807 140500135 870538703 789910462 754751104 579542560 63585271 723197815 797738150 622917625 228765322 642146838 866823087 782099599 741634172 550673371 900856147 136541295 212035771 392985787 648066116 876220319 119558936 201636241 315710448 162896772 304126403 826319556 818935448 485168192 134548432 904715950 258097789 661845358 212810716 211386914 956307891 280381640 841837545 962926894 461239652 80371366 678105336 359778381 454464635 293257128 62698378 430111961 595069761 715819452 281436826 190595343 444122450 773287283 70348154 38961075 709905072 765932541 537095842 957621828 495582684 162386796 433992207 860796259 769733811 16259458 897882399 545323422 854582218 49852355 277381943 203928322 121336752 136247173 595789530 798732547 214265748 355294027 787071223 26265257 190150507 66782388 941020124 666818617 936260877 306048365 950897136 474649373 780091755 137404865 509696557 961030671 312549161 251741118 330924999 656488059 429254776 616914855 906220336 874628143 361535811 369567756 669374964 206775109 549924416 911960471 463483451 65569113 926586608 765330368 620159819 959413767 72356166 771537614 307584325 750018797 484741791 743153911 352976159 436401202 557402365 471090490 91008953 149430337 455977087 810057195 201632263 292445360 396146353 818127576 655650758 26394212 705586342 293492965 315288831 861236186 823192868 848369386 241796206 626629649 838139975 895566316 854280672 445135681 382725568 238732864 546691606 275795065 16667591 781228341 454645814 609052008 130764986 707140677 551734418 477171166 606730716 297080592 12766200 583736035 906136214 817859600 69511886 42269097 132404567 253603424 950197483 593753109 863117700 986366033 879261489 896647878 573859109 85374947 446327722 612911128 859082667 489281035 728231804 221528613 574917310 655026748 863168739 180852554 602692392 747082448 991572153 785576091 202987483 193062276 831288376 574535234 48243276 608769336 744598771 54722566 43504587 205503 472290353 807674466 558631971 82727279 285796855 549959620 552365186 309228729 805784664 193092061 111544062 786844811 350957768 264755197 34507122 774534297 150130150 42887086 562080865 651820251 474363994 461583683 681832331 858645057 353175017 918603062 648885900 725387298 936776319 505807450 710426352 241718341 852872437 635014321 951583096 461669349 116103606 694618634 906183015 295254607 603282593 918727444 550443053 352417879 203703571 541046290 153477611 174376034 520152849 364267232 389426018 732369229 833039601 175175066 388556705 701014169 664734026 179636083 434360331 110163611 612957077 383476195 401520445 511783099 171339673 471835197 692018043 770247436 551780390 164431768 93478680 6952525 399460439 924890038 956926736 643037272 320029197 232866752 134002756 688441259 647459524 427145772 879543273 930353190 837545483 462250375 505904736 433215684 899705534 785099343 799293542 309791616 546460059 15976303 948079212 794854188 45194503 317470369 481651416 264064713 132266593 523482183 993941828 563096105 466252243 96387579 718787973 602932588 738588858 428799883 179247508 936567881 320537028 680428732 45578001 102054350 690913833 208855725 422086741 821656261 819444337 936624034 510976595 772163109 652597222 988516249 669601792 438623831 524051639 424851909 464361365 937837411 312268910 938833355 785259210 906771456 201410921 569956231 916018205 769814447 748244695 932797211 327162988 564891810 954648631 285042697 168852754 71985495 651155445 623629156 88789437 456730708 819069430 454561044 310557173 131420715 951339616 841460053 148315786 750769335 590194069 487396443 723227484 875023291 293965069 153908096 900610948 44449559 500413328 128524554 913314335 418625198 110302644 232045379 567426090 241773925 342669061 109233936 126677980 327820391 69668292 561916682 704027321 947901937 302764440 660088841 335941353 652004688 718779400 853181083 949652008 736876835 812610120 12513118 760219516 179741641 240280647 336834458 276431150 199861422 149006739 66636091 657101498 770364457 909644988 312808896 404433740 94233872 531187460 320718879 62588378 787664989 286786781 83539884 574351685 357343026 871261022 598835945 36059418 164490610 866034390 528692671 935607618 532425403 276811739 237676713 353654100 52043083 124596035 745780227 713907843 354533398 134379648 8012800 160045833 622337417 972077423 401071951 152518985 530225830 478528682 285259681 950739736 215708447 186889781 358623128 989279921 691882298 228341490 816992084 489370982 408223090 293043736 275485890 673059324 236380681 737196871 308434707 155067919 884445228 512379198 815972321 972169351 603799380 124620998 920845951 458783588 332650929 208809968 981407725 891652500 257618795 497097624 298968925 241749394 59742487 295693444 330378669 723013064 620722548 894364380 161544230 574130880 507828577 461640462 707186258 186929436 258938879 48443872 242642145 407271726 503029402 906374966 433619348 254635312 897451729 862711763 359971118 560549407 699038320 473032159 338614545 411300153 502273840 526870648 205035917 538226003 547640788 963037746 547408658 980525814 2386549 836803691 802043120 941977793 324907941 447308007 425599623 335871245 122339543 942436829 277492379 335837155 154337561 278008950 400262973 682539091 294774478 255309631 442811125 491573294 185645448 496028061 813408294 246139189 555914840 391840413 392326527 920104163 842907361 281677335 189685658 339432521 298460061 680452940 170316147 835642126 991575090 992476595 639297479 340565932 187600414 630161931 974556946 841464982 563377554 416131686 358480984 963823626 545366860 527638585 856706351 697155719 578910314 942938487 908378403 555637563 238045712 303938335 982119327 275001495 605599632 695643855 900878841 319496936 527011526 859971851 871913255 900665484 922444489 127084324 997554319 607933076 257763285 200633713 323370986 505389 394447456 297167652 894727673 761202015 44083034 436630252 738712905 624343964 353657081 707205928 139178607 220333093 362854811 391400825 521397683 414514114 285737038 924528448 655458542 414548755 835775972 535825036 267755770 869410854 224433976 415488145 268649528 19008707 511698105 396095057 415466305 936186742 44743401 955659403 872742251 93310854 668225185 802342465 493932679 896506085 698042398 51266672 195078535 173341638 826439380 279087187 356901161 325807499 188793102 575367391 915290518 632730219 185240397 934230039 216286528 674322842 540220326 841288779 936453170 28571338 80501803 147717385 914587019 292495909 521113879 373689792 849147541 549893424 220938445 69412073 508281490 847111850 701856088 437643619 686646624 894564975 588073703 789240387 105157733 435152150 667754289 34009280 910017881 173154872 598652884 57427113 831251874 408009642 423174500 18299353 363545501 149976664 680608723 676624874 642749463 245391322 835638689 296870613 613106086 616563031 11080603 165270688 735157819 320290791 229441881 464741215 871531404 190320014 930992619 128761136 464355153 774375051 185052784 925178560 801983971 527328641 324603100 503833656 7572594 465251338 342931916 885247498 229626781 134965649 591156518 956901495 854296379 612503075 49231609 376539074 836429270 745534532 726223758 712877347 832550492 5715967 675036689 569604080 686944300 844472758 468770222 118915233 763219186 513256578 941380096 633384726 370852614 877730729 178116647 988437637 85330070 858705873 373924564 369745326 136325298 946572122 841681762 510769638 165700040 224476370 262619829 637302621 578382289 558646607 972703573 239634616 529544318 676816721 541993103 508939868 330865386 146766757 163850507 518973287 890127681 567004254 895136233 453159865 707409726 692693316 582824125 4752194 984738535 225169804 473557106 873633611 1567481 58429047 27174602 701838154 762786895 982710473 159101503 234369092 866975142 300800311 947997434 438758985 447029779 111465366 706244475 402540016 872588794 820568810 520504830 299763930 156055056 620122019 128512785 710439660 968477769 535327290 411959683 400061183 420946791 47247116 576400116 593486662 996509779 938337928 455767610 884456968 926701410 238300101 752843361 217358363 445537740 263239582 872853887 930154901 968797129 720859395 733059423 460133021 851167290 686462538 915687477 133271205 369069885 508797563 865012233 552689597 394544227 227795103 907072399 235299262 107509212 269223877 877205163 109482492 55541370 584680889 519910695 517901349 501188927 723284394 836792936 220895843 906036710 425370677 832539122 775089107 713543595 62200482 695780587 54710478 765664330 826576077 248282625 586382475 369860682 533856339 587400744 730814059 240589716 723996607 118258313 783586298 56594455 332009512 720133749 185545980 60730152 158268917 295417304 759223973 677835296 324519824 818141430 827593994 294631211 447465296 496927420 781134905 378681721 720088860 66856924 217690210 317332774 866884174 350620469 767754568 289412646 554042637 585365102 46374529 329812425 487842112 334009178 353750807 395354298 936546363 274048434 559906026 747163822 272761559 185048142 225626456 31053489 614004309 310511276 473314742 170871215 677933204 266575248 474754202 485373019 652415506 890859110 564576004 817675974 241177881 543396563 912016269 159919148 447092868 642257059 797743279 334212677 59371120 692801314 246358109 324666830 128503076 553406979 854404618 325263799 268516921 676402139 88440772 297799638 577997420 139330320 567685434 798940684 90285622 777805341 356533010 127003933 851520949 950896504 931110805 972383448 360509988 604119618 895695340 606320817 702167344 694347887 964323617 901997611 701188328 976307689 979109430 364801940 528593314 848535176 519622153 731099039 747290241 561157136 346449844 872542762 951338718 61326728 834481509 876321328 261330588 146023852 782108429 474944517 590414462 171561046 228266989 864536524 870240370 727281165 659966718 939266330 216590007 261138660 414015920 873264243 637713720 278268803 261873917 442844382 934509488 776980581 946482840 679331998 497726793 99429278 667811454 176748885 879647421 724535874 797465539 409796614 894507283 284471955 239411811 905023101 561000763 923558985 351187971 835997696 293594273 788395718 268375253 792890860 873053728 690858428 136015337 334740245 225257811 62961228 560136089 954638904 216843003 522275410 250945883 635729143 511169084 892528574 68401142 918530377 506546566 193585005 143600654 187328631 913434425 87843510 387489921 423771540 442473139 306669736 899422778 369726253 882019738 153409384 69509816 125070253 509537392 23124021 206368583 679842096 149536250 386280170 701632320 275153025 717407910 301116581 328538098 251604920 978478803 262352749 881796577 423199481 396284157 580582532 788416924 836707318 89347716 101037495 96372037 450240563 830995744 299045544 875359786 856918798 971190399 861169245 657709066 201087525 350172033 299103474 834207160 392135553 215778505 964821950 454547122 282543329 137922990 763932661 134651727 588717745 438872020 173912785 399013647 798164801 222983192 662902455 153793521 49739651 973297811 833377611 584949860 313230820 11793344 851316076 918278894 475178556 742078758 517367169 63732825 960435730 10549761 398687132 695167251 149231756 363846374 915715934 606164127 299578327 521825750 868633404 685297887 87189785 908411437 630867629 605480940 646239535 584366055 841078471 102224694 182829159 896148599 518544358 363034398 728200588 298381477 425853457 495246606 335201497 520139403 654727125 380084213 325321941 102089654 510541763 582280411 317379776 625553151 519502355 672385446 634387130 105095888 212479147 310412764 151023598 434513562 53292170 948891754 691318616 308950651 812681769 966523320 818568603 911680531 963443218 946939562 94475593 34954080 702147651 469430263 615670495 792199791 635662453 926279656 324146806 401963594 456315959 3488245 146262078 737677183 439628756 726654982 80171464 543986407 86245012 990028985 165815997 226415930 12529471 952280899 812354927 993501926 383482510 903851656 357663942 621235757 430975594 911513843 844951765 732347334 654969763 105680248 910763901 600587503 956223339 615216354 404467212 54862036 764293999 6359993 865716382 943286307 636769962 481142106 320831614 506129616 69823470 957903346 208903960 831826401 544745075 897479113 688922304 132287886 721075297 22821440 877581601 781158479 268273811 490839683 29948467 401968073 926457315 462618979 901813944 700493893 800403530 217713293 358253437 243640742 576928278 363195452 258135861 809273030 769847382 334234696 945153095 41452137 64819566 69848237 267180753 710933542 868404918 953916198 10629022 940772023 978901826 985283901 423002474 852392316 599771719 479044215 796010793 610296458 884213271 464473589 98010572 339974124 158295044 262916802 692619862 861722826 587129915 74601694 643857441 839955929 529532540 814592331 233669986 415371646 653541271 405088066 499136903 738399337 332043649 35826837 962361026 415897730 740938345 807950986 123712850 207228055 884038118 556020382 222902103 460332864 905424625 223885384 292476447 731523483 638323097 781216527 298898864 159221613 901639208 780262314 823798974 979766213 193093059 872930809 356213797 112233131 697749383 346296875 619407418 198412598 45344046 739069497 434707393 456912797 650829467 675140220 393379406 354263489 365881716 496269197 104882293 336620338 849711765 780160920 398555087 286364806 788226506 186050264 63227646 77241628 711759302 461506020 126987272 775846830 700177004 515880562 647929382 545217861 52567004 196454943 666787033 64585853 181595254 791524677 400773085 946246638 968939832 701168242 989478725 575014580 54589457 955194878 611740010 28637436 858207790 342800691 683260238 334410463 86937808 798884258 372511809 594967019 38917227 267102225 709045276 938040959 110986042 538989149 46343539 265820889 125812267 566036743 224818254 103085883 849580780 844710761 304392774 698219489 444113916 469329036 957970398 234010790 474492524 865771195 878970882 465081688 995431365 139918501 659103802 676794390 58378024 810443298 993807435 816393794 390181622 888717280 29752235 837709599 681256499 645574119 186977827 13748273 21615933 262989370 503199344 867359568 781657963 889361808 299079928 154037242 311540894 972380203 891988019 850896765 526547448 41974521 618922466 590520611 692473732 667387868 835584099 44974000 513908215 402975448 410495624 243076383 825665452 376485361 613939762 198507256 890552430 296207039 925431910 578814189 199049106 317498882 667205734 798273463 517766557 193627049 538474450 24875313 617501939 542925482 974416454 322493903 177549055 428915037 223802393 589518126 290407464 17959975 824014636 999589015 576889996 476080947 103945187 716475372 297237979 264677631 26264448 376438603 784092123 600777715 77680150 354542486 42217761 799260121 828518860 796254285 682362843 313001061 446354254 304223471 835527174 66177139 765215731 20225897 373607293 969401291 804535942 479758574 860387845 425978542 140127658 356006708 534319235 392793765 721678069 628723588 336118846 412010611 951805446 81134450 868854125 134537907 98734516 898199012 235189328 912689418 204502268 396057000 354439209 291203598 941173748 793403031 468421651 530029406 326898600 859694747 627071269 300782197 902871317 12077041 147057905 282218302 60938144 821598113 65472364 941637216 315257637 111123445 436761250 154703068 849817517 170918996 463611326 220382637 836770269 6707396 360349494 712976724 820955473 760345658 731209017 551698527 174993322 232287622 38560646 941827982 318002729 358000792 854471783 683520668 592190957 216448515 257186330 197939109 820883427 627145463 183777454 211740488 624678937 484981755 983114281 166870663 961424355 862647934 230917385 629843880 822007765 76119783 504985854 896453432 438535318 727987437 31032430 977196718 67598046 388184617 561225274 938487875 569673820 184376277 571229075 526139022 56529175 535187462 785473024 293122704 498498343 876514999 120469866 867056224 961412468 357437656 973627313 508299931 999641214 243776316 107730793 956627624 511465435 414567282 378087237 630838780 54797263 819901201 355963812 86193714 927941333 849151645 19755928 455538990 360995502 499209127 662772266 576258312 50784440 790675419 353062110 109505568 278099551 969977689 741769632 117118978 572970409 104511437 292505946 250469156 126250783 474023686 397828908 52410329 232044676 137025278 275601759 564212904 779748600 259471272 23666046 48723966 984603827 393834663 685853341 970211036 219881717 957122413 455359111 318363746 776669323 155107795 251843287 470183237 686702345 438072863 77735700 273460625 850400111 621691351 887513346 887651189 200330426 206954599 694552980 148691356 962612261 969358457 702631919 268958485 891137465 914081900 705604809 192635990 345166142 997153095 792992715 422989600 514853305 897084250 796217100 684878465 2180663 904751672 666153839 404914256 716538839 270600225 719955289 536410319 625386120 243332901 647585035 698184829 215754520 315664720 557132557 961806271 594462544 90277909 962129987 88004654 782460607 500557740 663511756 806957150 336358017 643716754 415068620 937722978 816064032 219956844 470847146 990453770 302150714 340022920 26256402 641208417 156134215 837674881 135489016 747723794 229785376 61285944 553136852 654947227 217659347 782627386 827674978 168870795 37857604 54741115 434480578 291606937 278322509 806349885 272781872 124279839 296789694 26844089 149652394 360590688 621192371 734671231 251284694 812140614 92141053 118807178 712524271 567089070 226435514 699951482 772778906 885596170 74369153 675423503 87656711 693201356 279874534 685496426 286435372 313853620 506478285 441729133 982437540 19956752 687954136 239195225 848610662 739343652 590107238 985343285 625913292 287581200 980907045 449984351 103524924 596109334 86004780 119440792 812672698 988758454 264041582 990304499 361266330 226071052 794082502 348970125 75801408 413085243 368645498 58964226 384250175 809769434 674912398 224127495 918056791 947617419 129767868 3180122 978350151 106578967 387497098 273736197 367559317 702470895 418245042 823538447 143019427 615047577 554722469 23994963 629952600 997113452 298152101 934324569 208413431 975550745 718482541 69204777 347521475 119856639 819465574 489526087 292595639 593270763 584195694 943687753 807613162 519078736 423497388 305874258 279047441 36400377 161374481 270138192 114955781 29446980 39155187 15462680 331807374 657259024 880002072 556083698 831601374 365623827 526035946 214837734 10778974 846335470 506037418 881636871 489779502 218746529 491265301 378948719 112179534 671895367 118205210 584267927 394817228 670946893 249345419 584968325 298432919 564364363 848407605 717671561 271783225 291834663 674604649 153015518 507055609 387256794 365836390 104774649 110955772 8331246 994120554 359264456 935081266 360593953 437861929 710916303 507176690 23718658 73785629 451373456 859872347 743189942 791989351 104011855 696204127 229509537 21088329 132833366 880989249 71110938 769214899 637713003 290600688 916959209 722607383 344870902 183218404 477950081 349316152 950966410 31471791 723998217 726716478 921855814 335692247 103541491 384424557 494373478 727279849 875490700 421853033 638320293 709298273 399755260 727319340 321794611 958657762 266891878 986707150 970199216 650041413 817010758 988647554 719463926 135601302 855529778 201416931 313850344 745154764 643498739 681872344 831988416 626418270 141913404 14136885 291266851 405651961 343811070 58513784 42061920 654901460 808361296 267076187 159951187 121566498 553270574 34685414 908063683 58831830 28895935 415955951 976678566 631840858 53190122 151651403 387278233 863753454 396520534 715512893 566551444 627807065 576706174 906424115 668225004 632786258 800505337 582462238 488804091 495353070 863391369 235778414 602518276 384635239 326440337 193477441 390514267 279714015 760692144 551479259 209711271 679208204 597380006 53849563 670928457 207046879 545413341 612394711 370534358 783250213 486598292 859432229 283162882 233132056 257033056 116555430 713896012 744719954 901060878 708530489 567362073 854163821 570767331 676144271 87018028 486852282 282384136 339340895 875137106 333227527 410161574 173353469 102596059 106156032 479815400 682887770 208721851 671846512 887061 338140089 744302609 313457212 651502221 465156051 559963439 812503596 870097476 731744548 476346181 507504147 491544232 386552984 982471923 397822308 522267587 200217666 727985860 663803916 496598272 295191837 456607632 836672064 97016800 625473133 529444190 435977577 906762755 403276857 869482013 629927889 836137239 697333779 88420126 19703538 303582064 490925822 757362256 856624343 599127755 226934260 275796910 98881637 508550889 923566584 533453911 789041359 28193080 936567025 273541575 139644907 647134255 267611159 451477976 414463807 539731640 49269539 894744947 416262466 926174070 627496641 91693385 978004354 47988570 470940249 195724417 239805343 783539706 710033114 689375340 467407375 363618646 217169176 636215104 473204711 561101379 84535427 888345781 305382225 276520941 664833031 743478222 153654133 970131520 10097408 64300879 298824749 998116637 806188290 202160172 148211161 945569441 219168536 606119494 563195775 338508494 868899794 428088232 753431525 748965178 182535916 751245665 560909104 324291086 616720477 431832880 393142357 624683191 611874699 605214044 639774234 71812903 751418006 280430015 680692584 383268693 192177084 411465672 702897912 954642398 467605500 800887253 394658410 501059598 903142176 672330339 414984361 804337277 743583044 908794838 964093211 819824932 136380985 31045957 916287619 699206917 350045738 501600114 942916562 577619867 345450616 520576195 109515642 740756558 352183417 428479079 206758274 570805313 377695326 103055077 357952001 645576185 23335691 720814186 610372035 106698600 208524820 922697448 339867817 32176923 158966126 384550103 373345636 730853892 657950710 803739092 498101118 310435033 822821081 618111207 66738096 533890835 790835684 992337602 617435657 903970246 843033731 61004296 510338515 594226462 404488598 621139386 831134752 764045238 308717777 194720533 76329646 327998821 413026669 40916970 304332762 850512238 832622867 141501501 949860072 99538803 48847277 19888707 772690834 977188306 72686858 661921102 416423379 463047691 613434135 81022418 328104946 708630550 324239885 197098626 65482054 572979716 973076922 206259864 249072664 886934940 212928555 552054181 487534775 833051288 826220338 338758576 17053160 540958108 222004293 15616588 100003351 593756637 804527579 614520682 804662621 457613141 446995754 827393318 961958878 449029144 614453666 726730204 293841554 468847491 964749000 270647080 549663631 459451509 557806735 58792509 935918465 291936391 75866482 730219179 114041062 362456070 429161550 998025854 919035951 248789020 910977886 119147973 331621877 578465842 537417358 475166079 943015609 377066982 994158399 642576161 170753713 101479861 657643667 8223642 167988111 740123850 282306416 692679897 958611197 811001503 82298757 468014912 946378355 239685389 169302019 205372987 557977815 874797684 283128734 418235429 383200057 510056843 531571457 330469608 593147676 694522458 526403969 492164482 856848774 734121500 909810272 996963248 683393979 911020609 810519291 253767223 790836721 723137271 804733666 211673914 934544968 574940002 917102546 327659204 718529466 117785055 926572722 612736448 807649719 719563794 9268622 657661456 342760943 374678296 936894843 901941418 17881228 917130379 590822391 809295241 231282833 627183971 863613579 734593368 729348104 568572530 90290555 803705058 782857999 861365273 751057282 419685935 663392969 872775071 85641445 500429015 788011875 141472616 47050539 880580822 357110691 895574664 408115309 809357343 131254988 960232024 840322553 503369557 636539551 638303255 591510255 68928 401835923 643153196 339667775 661006292 971408925 572276486 31298484 373489604 321284995 23619300 684723247 101116302 101242289 788114583 534137837 504666548 852916899 288877366 694906983 493767239 846059240 256853130 453607170 728420135 460100016 151527616 359618738 785327068 154572150 273367345 845373816 884429504 279171370 40796379 213369378 361615992 249015783 860537266 51383849 755555444 66342059 99012730 119595506 443397299 703718778 585611357 600106142 397150192 282803570 144986424 519793591 375099240 119712878 926490232 218116115 480491510 342002968 57240288 11589258 959253032 31112252 877978755 952548642 77485501 889271640 476700911 757536492 235826981 280312166 686276145 142136515 784655209 776921210 623702336 961928743 131877128 197797133 105721650 28636635 169575535 809262454 872333281 163779367 460143188 619284587 378900861 325479786 720658743 285166851 421078251 731768334 58169570 929718908 677420901 142667831 971751279 261480044 626212551 543248700 426177283 999151856 314060381 619952350 145939238 936696297 580492554 95142802 432469570 304275393 762926296 361497012 726159082 106015870 984199047 320875314 575417684 933125219 423190993 617831115 312379895 139892728 361138922 569787128 751093331 89754336 711899031 679129882 680651855 510131923 512175249 149157052 519345780 481847761 624916711 836360042 802831202 315192452 64542112 117348001 447369824 191581588 605260038 3606996 931280910 594297969 775741832 183445217 750375268 399699087 480676282 650542982 441806628 105879771 110645232 361896296 623864645 570400981 871418043 221651296 887333253 315242427 82365616 337608781 654666534 807664402 993028398 466066839 642741376 795027254 518174564 417718476 614615450 139263959 80401658 845263953 71088233 783011483 666475190 725105691 98551303 509318247 992799736 242236363 579888423 983044082 22978632 975415164 372197294 258940768 69830265 554808879 332488404 290933889 296808233 94359151 363365710 730322994 966322308 654148399 614753253 564214322 660310269 800501820 19207086 463239824 608041401 845264884 272663799 112305675 77787650 799379061 374236109 389025122 631790668 879431559 913166314 97124265 542263223 644999255 276870827 349433761 819209560 322364035 199579864 845841044 699853872 625312303 924136164 525213969 726448273 217304522 601863236 744971226 932413267 956382312 935537043 310685481 50828768 978581135 525953016 502636064 710762294 435281981 41194923 353181008 406792978 75797838 954039116 614273255 506736401 267062631 499010641 55159476 148184714 474103159 656294694 159830935 648940306 389669607 767462225 433300609 855241644 381969840 526036249 734506931 563794204 359201002 147098341 476990518 26261785 508837529 754589853 140704219 609771210 84465281 889094004 978008332 557813770 601443229 39458287 53874001 618436828 102920929 30719094 97456102 879746772 422393866 478033329 566040754 304643979 487197145 812538648 710016474 410930074 981820556 389667151 149256558 445437182 911175790 834375450 73646558 571152182 507555499 150794116 64621388 252917910 250277233 823752701 581532982 834437159 987310873 931666799 938366088 563478886 246514066 330906209 657390626 164391632 432978219 427480100 859417030 46359748 344381023 628033872 217584297 482300248 307643977 788973210 935657021 51969660 947544716 586646581 498869218 443984532 164704557 463394875 389690414 823427096 395615769 104734052 793932862 565853629 680117409 20480719 472531510 145638679 736702295 294362784 492259607 548008823 663407854 217675449 287861329 567425427 167667620 903049251 528673908 948421045 793714426 38589564 407620407 651492900 734860412 453914055 72920272 105352740 657533244 621308124 47552016 419133871 212778205 225893770 183994749 587354685 59279329 851152506 472824973 6650730 889131761 486520598 455166355 63794143 560750265 489703852 213015412 909449618 217638410 839306404 727497980 522834905 887891500 918062869 6488638 354413776 342058827 376806791 287439608 383450326 267582811 794534901 767652906 479100800 38983883 950657595 116541914 444853564 986431887 83881814 247891239 384883414 899267774 973335554 315210921 725058369 242269123 898375520 814954399 93555039 684176358 521534550 289496787 406385864 976141728 741422189 418525026 452001595 447260026 303098416 955614182 420372335 393004021 194792583 560823923 409593024 496833105 69717041 34952545 414761808 786054742 132121724 745485425 234309161 780127954 490130948 875099697 8469198 351606008 494105828 417192408 203694766 268426952 208965177 611538941 774023615 753449187 755449136 202039037 800348754 960078795 179716025 142725069 530050059 517408846 149161749 347995952 851506418 163639384 493837167 915878896 486071251 435225154 392913878 195251969 219080206 748785532 700684789 451356894 943051484 989401166 183337632 643890611 586450630 109239214 421356387 921956885 573888066 36101478 128613788 148623835 784746639 519830862 363049448 341181965 836762285 87862765 4671949 949896253 900397408 848457438 613769987 954075639 248071591 704615039 13555746 596281010 783476532 60280132 567811095 881409382 810650482 93239546 165259955 223672322 671906934 624585475 41309979 418106894 247880278 413830933 562371707 973252376 848419793 550153826 853835892 596489846 258588860 574012831 15716343 727112664 759139487 789515984 45128908 476125429 764443083 702866362 795959805 305944600 806939504 53515634 461084568 279573382 519905152 659188281 684249632 72107797 937970630 688826748 61332905 348601565 504902223 482522247 342160373 169375045 200504856 39874457 57325627 714969112 621474305 380656296 930968261 827487861 750338585 269127597 836720372 750197564 791295264 410508386 884576808 729296219 369756853 421674375 184852651 466740573 450305064 801623806 412223673 425092681 550354784 805307644 413313336 376818017 850450301 581789338 359498102 547622320 231336329 988101040 863090635 718322032 802870949 959221812 235722232 732347995 946579045 802720404 159544646 832652469 551031097 957146424 560756833 696049259 962231752 486140652 713570596 988823070 653347867 918910228 312450156 16702920 873426331 938345263 882658296 550808915 127859881 965565064 788326077 380127391 213076004 794222741 649891926 468148242 384404429 571868172 703902995 930495618 987724174 462468461 670385205 297812952 590552887 181449463 70827116 859718116 970689411 56834403 375853863 731546070 326917280 411122449 678499673 607966455 978389823 682598286 809394415 437890746 41768055 644935378 937023457 767649786 290222596 600046655 977145596 114574341 836298814 371853533 943738527 716525456 759084803 339874229 941876197 2637805 949323258 483533041 291230576 102022088 614774476 88920084 325121865 21647877 883818848 9886414 689498803 959832964 569525707 980017536 977030968 682594176 166913220 214460463 625330498 115865920 342534532 94524165 16111166 776042728 985372867 976184239 707237971 181493611 833711018 597584800 999744506 123717348 828039093 820777508 647893152 728567582 953171813 566213445 912135017 395962063 867078851 600628554 539055588 771286528 469002764 340772614 217802480 535222166 635365147 208443953 102506889 803892139 985504875 229946144 163931018 500515329 845999428 927661551 277099939 985654339 434800425 91642399 838545733 946728983 30872298 179752747 499420559 233005237 864805669 778722300 890793383 271521525 655543394 819701533 310746559 231759630 379587171 606595920 247190451 611722266 226219053 952672061 283051111 100910695 986617614 799285232 772213768 262338218 732091110 879255502 377499207 195519697 658950679 600157306 378155158 664240207 371983898 160475820 187972124 641728469 776594912 232150243 733740454 705342265 302179555 243328218 63228668 185141588 2334050 783374467 860793539 624776876 327568533 192543785 74512827 609936747 656791819 680421986 143370973 724375783 885401140 574389017 124082470 390967489 229869663 678331994 103990898 741747684 369229384 910843249 43677988 159864091 267773335 793091201 729508542 530760742 908801018 133399900 583254088 599558672 525783993 800671172 569709566 883791534 976203750 975381750 473900872 826058522 853860509 904843332 943207153 680683090 123984812 63830816 935188461 728005064 725453629 495769645 361235522 70343166 368816964 811223421 870819130 674012834 726986052 746126394 346177958 435780089 322812655 533920809 1130930 244119395 657623524 677329113 37212433 698926508 425625805 955515418 251486138 948473488 354599715 487433255 959405907 576652956 210799099 492350696 75656021 869156364 825358821 482790493 369788057 437378714 184484917 959379735 176377504 709371838 74834723 33714626 159067288 14915380 121179278 293245963 83710398 349531518 6122183 956919929 328141686 933993640 709103939 840473264 75653974 377656135 354688947 8754596 500494267 786182346 466217087 869682160 694386326 211008520 149304705 419224635 267583325 635207023 519424606 379726978 744572433 577599204 586412645 941158590 704840861 401243265 372774778 396440116 261370765 800837191 352250684 451324271 758751423 584488683 161036888 938858124 37131948 614425464 550519605 173656068 873182064 391769601 867850076 584809611 424872109 305283147 272530826 800751794 336773241 82541961 11096287 625751581 659891998 847054315 288963455 981887696 554955730 973861417 674826107 644927698 638950068 971468472 872821249 329840679 798670981 273014 152978980 67188595 262717196 535916780 51329166 402971037 860387311 617172695 844948662 881831849 566983093 113944537 829055357 139214301 991080559 879549241 523231561 850954042 405277421 90075349 103023855 850221435 909013805 294440407 509437963 557608759 411007430 131074698 1710739 142684407 426379513 455091382 818273438 374130146 493809922 756561886 182452178 936277320 11451041 186730607 428418387 407467349 988088242 832736386 122387727 65745392 722383863 129497205 155574891 473797375 185912427 433191145 777529132 941688572 901548135 416270246 299400463 89978620 360515971 358014848 91115626 326376269 393922676 551137725 339168717 118782693 167497350 857104205 155263559 480354963 269431069 593731211 696419413 981487936 213195603 196856827 342804860 389707532 569250418 301877860 810642438 450697121 103938644 827132090 538586190 796930214 418202474 450391337 842726721 60924896 590516723 243705371 726622010 110875220 349967638 247431230 746760376 182993285 405414524 892763335 862378329 826881469 690549009 49853533 637372604 318153278 357245840 561213982 877780635 181509180 890680650 530453065 811394494 581516863 154879291 343496604 696023293 335073162 283587260 975483855 125639958 974935876 206860057 190759717 63209556 116894675 819162195 182254112 806651340 84767531 495841325 272043154 827194186 568587714 686832931 448219717 652502653 451713272 947265952 114454511 384470602 424347217 985534436 183533684 395364954 162428462 546599926 941138233 402043412 340531513 829469998 868852113 170095661 496567105 738621162 271493950 612486867 457540263 676463360 105667955 157639627 282601449 432482758 332863953 454986243 156381939 136159887 967985048 419067188 482403790 253193239 344228212 396534516 753196379 50583174 174186233 996540229 339959116 66061363 653729160 460735292 925061005 269033531 418424720 845144770 882460223 708983879 132337511 670941985 126144037 476764404 790243961 805413558 491098761 715919030 676392375 446701081 184437962 917331372 421326324 456619346 559830914 155245910 919153455 883115936 19299333 961104463 710882924 289914880 215302874 402299494 264169325 870737152 670899790 294469583 959089116 854238743 875964400 273519753 787548982 832924398 421703051 391746999 785526193 637396582 968337288 332921578 527300015 861515306 757433461 766000310 709999153 966194564 371115594 645424611 9035827 263263789 85852483 665652599 671480793 948495409 277948906 866971466 819573635 653995745 968854388 94136116 32731997 881666261 856578909 88076334 85277503 396336043 841695836 273215451 94089569 797933071 669005048 555157331 413755455 844026137 433743968 236891882 323332423 747698157 505106796 452832626 147660816 367914609 584495338 108617359 467110278 917298366 28831384 449829942 752523276 999102027 758390738 511727215 412844322 584287648 707113279 762874877 6335973 836149691 424174323 226151969 771202278 741454873 334942093 412032758 795931916 646057035 998045619 639978603 874171159 839513891 639109680 746542729 960759672 106842080 58994643 709397457 245878445 636308229 406957989 290075251 733221530 307655324 46929422 640829791 90330901 814397986 803656651 983564992 133298716 14216123 842246657 437169153 635348997 332995648 794028797 220302982 135137188 792768344 947556222 826572693 52095845 169135122 817050701 800848359 728077355 659896098 86386766 457675182 343124169 403014183 282176120 122006824 647087218 503486364 419100372 280351318 41645346 567827339 590838636 293699705 678093881 496776288 101269415 338384290 199489013 429734227 636812572 5932342 343648046 823322528 48395973 802761061 317572310 483480690 586918790 533128239 902592936 785412266 183034495 374810589 356492629 758342386 880785385 888646850 599488406 45009025 312408262 345769048 795389707 629078140 516094530 128810346 683122913 505707307 68535468 697198239 592051191 289522912 380213080 257523230 748789678 917696570 930532683 824657925 466258194 534292075 306854519 306399143 547248081 345807915 254443642 174470602 994804826 554115015 673101929 993277006 32137232 170363714 305807892 304356993 57840549 768149239 28352597 753200410 174199020 541357856 321972798 913670998 121445531 485980594 570115128 60941863 818694350 700719082 73292049 906231241 47382997 430148854 647423013 176933612 206097229 165897718 604589436 282401106 599261416 877505967 983361940 548442803 855335481 251544019 340339281 389356037 732334160 618688632 381509386 323465003 560386255 945078076 789175840 337918181 768443656 40706199 54581892 366281016 322612499 864696675 585035619 132952998 686191493 72574496 345857533 133345812 913929453 912966066 918323564 378468886 503119932 291852819 342407271 980923818 187311020 716349529 999677529 34855819 227367143 251521450 666932287 279473157 80197056 24786415 965473714 137269336 85939489 657968283 72775582 557229158 45063301 827412141 71898793 370954303 85554162 410031905 172783325 175283579 994761136 768466570 635117527 329229471 930425578 67996369 562838662 53412761 246124904 148241293 748003382 650852920 423652032 349778028 866404608 688919174 359966342 929563420 986815449 607748890 193341194 691334036 389952407 720810514 312664316 924662765 151077870 843789596 48773030 612949627 273869561 968606266 731715858 558900752 793988155 602462247 199810086 836471769 144700849 918270404 662161898 90630105 176570680 599390259 322992025 501963315 711836034 138587111 311877512 311703462 153475871 1763597 390629261 450576819 231025485 50377607 12022277 801963976 134624961 407369442 450487220 405444623 375021894 873751979 425934894 452792393 401435430 896043288 946716835 480584923 321901281 455401271 710353559 838775255 74162703 475232086 719932177 993812695 405182563 278429876 170078616 304901612 567691289 183463561 431064843 647554883 72589557 897900352 349359128 581913135 218238979 751849150 105335018 101981105 935680001 503879462 633025196 986630840 574161203 756067844 184351777 610395471 531963625 51828547 547972645 261657330 920487504 258821015 738690619 767176246 349595798 534423450 556915929 683880624 911948980 55152988 496203056 711261444 729405620 859581244 730629932 876928671 834720841 45133041 837036866 245808686 870317121 276783794 231926920 614387429 666927971 779793543 756277364 218133497 223458561 498442657 117385104 842543735 372145878 398983183 909683965 152128394 635057799 586702376 923584945 865165834 512875131 805821333 332238653 501869146 920288707 92611260 830014395 477861803 516802361 600353409 448827734 356692468 307463081 405394996 581869789 354961360 365067151 884886746 326863286 677039339 570713378 290419120 973040908 223448151 742123150 988401423 120756225 734390109 290189371 844830225 928119364 748351009 698039953 932844406 221495831 878683016 348866303 901329649 345061108 697773090 777855730 550310471 16526690 529083252 875767459 147506422 59964679 782395361 415867850 74690946 240788041 868877405 514943938 993261548 759246258 994284368 481412895 772343366 441643017 241537833 390733337 92694092 289271685 943100546 274927223 790436357 173912925 674302048 79620949 367826921 859604673 814578603 525541815 311532680 230301437 671915698 559561623 816812394 503566836 907093432 538703567 250254922 891133745 555006317 579570646 849897366 251806021 569008301 816178930 314152218 364103767 193916450 123258500 271284019 157837925 816395176 892469234 987836493 474786791 551411387 78501168 483117882 18394042 481931397 282877208 853052605 198214947 111940569 320297499 712329048 745468848 343250303 321468818 796563847 974309117 473885750 453171950 799744414 308782258 199175533 366919452 858532269 349658761 127973053 484349918 168687346 225107730 993410231 527622769 142163332 753344682 480346439 942898362 118761087 47836717 751070061 429797378 620902196 202433404 721905154 374769627 21178529 72757798 221527804 685258335 268502366 879305275 84183465 919867419 833772953 617447712 534602766 21075057 855394704 352573051 990249706 737852383 759023592 263117470 315941653 780673317 269582822 305090244 471928282 182920755 941068057 915540055 686625746 652792833 209516681 307594841 664115032 939671239 729126637 277381204 598785896 82846448 692118350 244838238 53318905 92288063 176006083 795526020 446877812 378220063 550930506 403272200 535697867 404293926 9762578 188408117 339903102 565994496 542799718 743242004 895581333 371889023 549990737 23656956 826757305 492873161 948499753 738497177 817952145 972904837 911474768 368121084 832230945 119121665 301607618 984117597 14840044 690623748 969251547 248798897 127484432 174792550 213664153 998204777 575335307 299305691 141580403 929324186 182650865 26610573 491073802 40451419 74375454 639170480 39220221 53186079 588775793 598113948 606289411 6210564 414055445 486737733 919017106 200204438 618558958 238823376 837621880 675289080 148208294 745354036 802580301 241104808 668190982 207922175 281424720 662280384 35823267 472061488 292264158 424459917 275126262 528726346 850349153 25013761 692185740 776096318 313113721 128475487 129946559 355411069 328984147 300955966 749652474 969937041 798090666 616399951 734271929 619678812 403150009 23468692 849012916 252831024 74864695 285913038 57287004 863297648 637834292 856471750 89845966 878143034 46515032 778625573 147274029 281008866 359536266 301995486 943847726 195787758 615427910 39056246 832430067 136392725 844488307 300344433 174360168 805331640 549208276 407841134 735410089 271903156 470274596 172069744 18771311 85703231 188780735 385493502 426816315 989364722 856343587 199708366 673687105 158863624 545340471 356007329 708271104 23248549 49013068 90969769 881974368 301124099 525954960 655671646 661471875 603909335 54604714 651316223 630535476 104768224 962603604 34328782 704620470 151012689 623660487 61966979 271045939 365724876 665389957 63856051 471525002 247438189 125709560 3456013 27074673 717662627 334922185 961011899 406278791 2233039 606083287 125915982 508060729 352141094 149789162 202293824 918336265 705426257 772952147 218669501 819566881 342021406 202315797 971116189 876028989 887215831 699053807 269685978 89043340 15141782 653758157 778155453 899771722 498036117 262288093 388526718 669894215 106507840 116249350 270411262 487487326 163200027 956233387 123269665 755606353 125156844 271847158 514343011 652630224 329964896 837459549 990936320 222922545 757043708 127914857 322034883 324963609 125142829 927457653 883817860 673266788 746934296 822747869 41916883 841426794 614105587 600186263 359595874 562934698 152168078 308002847 754910873 900230680 454528659 230577217 973927811 804196932 306667363 927820793 941043926 566273575 84279314 413049533 20112270 38838134 780245150 380479355 710950725 287015016 652951535 947874962 963779494 614826008 370533389 284815704 239993829 355557457 936108192 630622487 779247984 85666311 646233153 817264813 980377102 94666607 483573785 266091473 753183001 617551838 27118428 163827234 506101586 876492260 143660974 78355174 959708852 269697125 280991607 135499170 492521433 987679568 318542055 991187549 538747025 345024327 504333862 289302454 915575314 968098494 708833979 783001816 488877358 905691476 4610486 397710456 906700815 839470257 265033806 580147752 900307146 782302676 944876854 189424945 797979441 470000029 149326645 15651161 502799563 652198556 5301689 381693739 43026401 466910946 93073136 748969486 373512492 641754137 20139835 556999147 963714761 430730795 192640835 173660236 774531301 614443678 310374511 283249327 246150936 461299388 133402396 559080014 505947355 248479855 759545391 22286862 600585632 455567055 489558010 787260894 825707507 155763152 41050202 114571437 675664981 78088071 811300815 871365760 884498359 513519738 976856030 163083968 841864292 234928995 185572364 63271015 207924044 796466871 586074348 276159492 107755322 67506312 668155815 171367507 24340651 617945801 535273829 720087761 613818264 846113350 450142313 884079264 889100123 785870065 559531122 695174597 650846942 209218072 197378334 840619602 110713463 4941023 841580401 239969013 922015003 967859502 747400272 356344826 474336665 572829319 998064360 208727388 705978406 897100754 238548375 36686661 432911879 50866900 950626679 582611958 886158541 434700844 736192042 697601114 460834010 41920378 605575139 649451823 758701779 207185970 946331828 541555430 539654496 475671571 453795338 122343392 549175692 395358463 934556118 50010107 531205973 49454761 14363778 791437689 735061027 803205820 878401227 491550188 591670144 72817363 553450084 36690534 966104613 456542804 775853273 344875823 245147093 314843518 30859760 886298725 139964185 886264783 922544720 449255929 625889700 713100197 711130743 703456380 494479974 525956094 983942548 319273965 151246004 142190474 652673422 952378522 455140845 948431239 37738023 825533856 617496721 763806149 650180854 876244606 524711168 571636040 745246790 906664445 572230157 658100279 46882673 300379930 461158502 28765805 778710878 891081802 432977543 531484727 926749885 122380957 248255468 29671443 634542789 970351366 293571152 405630456 58527512 72921125 273327173 427761679 793217044 807155432 32216874 306087861 779515471 44255689 601369910 965996338 857290709 409064251 666221518 358772943 74284584 713442242 729345936 547807482 532172626 647201148 40603008 340433363 319445136 364134635 194068903 732137104 712850641 433382155 923987560 332516804 743994723 861469004 493801689 140267868 103931495 798981578 751878179 12120192 426459934 714394077 66696053 412483982 106372758 550113719 843399297 727060240 82143120 91773302 46691432 19052743 526409306 468049120 10273412 49648997 283571410 377889284 158336341 521748493 744540587 196968276 107863260 37996298 859782331 496447307 401449526 472855077 69286968 697670609 721371094 993234020 126447304 935593277 695011606 820059439 745773073 851610712 75463109 91016004 358096276 647216527 752534402 25686291 907421364 97347939 468169646 917411153 13784616 830809411 863971629 687060433 993955445 889271580 135411042 650265944 380539976 350515161 734909330 989311455 34466460 852721396 966788298 682228150 174228793 170945902 490013310 272678405 812002756 654425994 26663880 218191270 906568279 391081523 875435142 964351273 125331691 700656463 938348413 734271723 425235117 928807019 686516846 490661654 431810424 718238516 299205239 140123128 314335948 974409347 731575744 667465042 953148838 514849696 325452976 421695529 107066039 14379268 333638554 785308509 466650089 221070537 952883986 548952282 651519671 354208651 405596211 939220764 393728258 383085079 781428316 152679317 382550394 729644247 658184918 376494149 695577818 459040194 694097288 811219638 248258057 543939842 735269000 160343138 714619849 276935534 85597116 728518398 920925904 523748970 779462072 33552560 722794471 163942300 809874216 716587549 554207636 846135489 561262336 964299541 428182482 40768523 802980609 817701722 380391834 764481587 261916924 668344400 598679751 762622274 984604412 823219167 244775389 879535917 226554687 63772629 776544466 124049145 710761660 398729533 688754660 590542482 48744483 196478679 483852660 732041195 598250589 302988445 533703188 230488411 695949971 923019563 703806447 481606748 256040752 799365830 727005528 41552462 514214864 822961173 379213025 983886035 436907225 478354006 15250256 141961908 271443997 110705311 992714568 249120998 220975604 296828147 380107889 318518601 466733171 48669211 142168729 687882349 833599416 823219455 859586754 411885624 12255673 607434690 462412713 945723055 64240212 153863344 6748376 280485621 387900314 709164676 983877390 907512313 127975234 687940240 946636953 441229204 516481845 46422707 213596314 673794078 536099733 191736702 988521048 814497323 930918973 665485440 949941869 78337493 983199328 851171926 390139968 306161462 92797390 787868045 682129786 60868119 230779766 596128246 261956365 192257390 34267941 678882705 345588695 62022624 869263980 428313894 204928571 960690610 381538579 999970344 175381028 638462924 157632322 31935595 152867944 607658499 140637675 644841329 146026837 680691028 344712483 600333921 257388781 576161823 153915754 559238483 284971537 609901515 830040848 557357713 58156213 55867336 89667534 465216896 119633253 610904646 628497741 964867676 420892041 613255718 821255425 24161413 942861252 389111176 206239680 765893578 790931563 837586957 267173700 164331945 268797470 442278549 674373366 671179147 603439787 970394229 27227074 108512101 305218317 865060630 790621603 986682954 342100804 650479918 963296828 546877206 70975953 229468026 348116519 134461803 545100619 245310979 301611416 909246626 766634426 99690466 37962509 831834043 730795856 357072822 377611383 532009455 361101344 402273760 977618240 112765034 641514211 605343548 779690988 335246003 442440947 154419776 617269151 688510511 270827901 383109840 115255636 914956322 820889389 632871677 900391411 922844934 187920683 780761380 570459980 131775986 170681274 987607544 295538155 495023209 803185986 812768253 681985175 307517576 325798514 804306324 489327187 585483259 197577043 896281574 113443801 510859324 644890370 824271978 799782438 559596907 792317886 695560306 730552629 462988985 306613225 673830609 523810722 75129623 186522700 972454353 285090520 159930060 874717701 334260284 694801251 338809974 765351499 532400456 455852587 343289333 132040479 296093730 879365793 564648033 758425857 50580252 477121836 398460471 602395035 563048110 821638497 627297285 375248988 459138483 440674596 153831318 601498960 273823207 278700065 772191175 304282138 386664769 821617629 877852447 166511049 292632026 103083488 450697761 724731309 568062012 59287304 999593194 52852068 493819097 384221021 78072636 32130004 110757637 485026656 531881324 120144470 625962039 776434850 540192169 498580635 785431302 793769858 573870636 90794070 515422996 540254803 74015416 782967933 292926485 465486359 653794449 810587314 602239548 56415430 199910926 514433655 622617311 976610138 777551098 901378136 145014659 755641172 837332221 884848594 789042606 704569550 404397516 312978328 747466429 19161899 709762346 727252546 653607412 515797339 935155948 612777765 405163450 150228743 958079282 546340254 191468424 78640607 189253529 530415699 67499635 89562211 921696936 224598896 623670117 928436107 44298901 370456298 807664000 159358561 286984576 973259936 742250052 879579081 598295499 506836783 390570961 404511189 357885487 18171466 197209901 757386999 14247820 657093663 138804140 984287478 345420401 279204390 536484206 425280666 84074827 305879104 830874156 766527971 638683915 494561247 555997149 162195794 755848297 588156129 159349194 391824259 621162967 822821214 234995899 122768348 29122813 917737137 785871598 723310998 368076853 285006051 397251509 518526626 377415856 872142375 399044205 376892394 611051614 370164513 609835280 943585854 609777359 141051662 184322197 890380092 699117311 546354358 263959617 477152721 645749068 607197639 866854542 438619399 114875844 733739648 583493398 488086274 858452692 111630261 975812104 172389687 416277365 773989935 152636802 495837980 838040729 827783685 965673991 326525498 892317439 709224645 126190265 208542413 115512663 125591973 59313164 6222059 23982880 111990722 235536741 993775775 887364672 238398634 123890817 748872398 557270881 892540272 401092906 25657382 16142135 942917 143726155 642955845 132584340 500959712 85857724 670898786 274318013 667268402 26756757 45811211 412989869 444115714 240152413 783624318 630554906 923084491 625730056 661307593 127213675 740126396 228033934 278140466 257019002 547255831 798478466 341581100 772440875 881893247 364407713 484073987 425545291 156989977 481123756 774451310 718256454 521276340 972908046 461450281 209298261 876711708 921569242 861415263 358286954 447624096 681135072 891569313 225159811 590063050 893996889 282419382 621733985 277062435 92735523 742431850 825639916 454619310 785621954 761938646 249467042 310204649 328481517 703666204 655386151 105268783 356641166 587452591 72670445 913229478 290348079 366160353 858784743 672643285 943603366 310826212 366180069 198607165 714866232 637552730 438125840 135039969 284624538 493016278 495422884 166655721 196287673 471159602 366250116 174870443 113031617 443550674 487120563 154786668 154627183 248215594 819450199 203436017 952290163 212556733 904776901 320548040 81875775 856050889 32804821 188225095 132829022 932151410 279545547 154541570 884322740 460684361 740351249 490243581 196899663 642816390 103330495 707515182 248042116 642550863 96059703 333890127 560031505 494130804 880885657 294413486 992854433 801121289 214427360 343096073 894306121 122646068 802921032 181929804 671594832 924654632 875625705 649162588 225927511 924320026 479323453 991373137 874012260 270096637 350830407 214438505 612831761 774090124 559796278 538126917 90845910 859712294 984479200 859783531 131290444 386710679 657278711 442330481 922477413 946624103 418593813 955461886 998204773 436488954 674678404 799543001 591194976 230429186 660968547 656219889 352212499 511633689 945067137 71102639 924910339 931859101 437095114 244463625 736642039 941878261 176072932 587596584 239946424 564399073 105031569 859140836 646133671 647174014 912871784 522340407 435095293 283655871 4963959 89664570 397517704 199242828 243976667 425170997 79921187 968569558 51138403 538452243 864590395 222576995 751575080 239615636 906976216 665188706 318322075 829132026 378317839 825563422 590159360 310598767 116276299 293991259 784620947 226264731 162965734 307107835 712166969 992183009 956405940 715299606 587569346 639758672 484258309 519946219 317248227 893853157 486043997 684571028 986249568 451073797 786663927 732701934 535083885 542132906 881251508 19907234 904450867 330279894 363152896 765719321 368639535 829619491 816701744 599105957 285468001 609344962 948033597 755028134 623354203 600471910 201865090 623493462 804890701 419093853 248589161 921004974 664914450 883135432 76295221 713847835 251691421 108858646 848126051 984896021 753543046 225345348 922770180 386871822 609738642 384322511 408877747 391581224 542844671 937793716 684484276 325708218 883361803 765005660 28604153 374562492 177908670 230569221 994361286 581381743 716921985 489097359 64969007 864932125 926494912 257629555 86524377 869744072 525941094 732402868 962502722 6670482 639856360 469360373 138609038 185549532 7211355 533379880 886495255 813648461 626676588 391386633 19339089 208170127 345808541 406335602 454571681 234540735 311139884 480477605 985940504 431159131 523213915 107742559 463180058 111374321 486308918 658875797 119373302 35893749 944932681 970159163 197784404 306803844 103367949 53265945 704221087 297818513 527994665 147074958 48437587 659623672 757924685 816693042 38234809 525296378 135505466 340467836 65060509 957933352 965649055 554063606 917924152 82329075 434740440 901959235 580071308 269962077 798174501 763232494 63945101 567266406 478968336 134196147 636080995 217037535 461313700 373373074 171705764 204833653 778611173 468408958 154505197 273458212 633326931 271021199 50600543 203115195 658159943 996303855 438499727 481200324 166001052 328675235 114914136 965441612 781260644 157931260 774589232 985917757 604077250 17423151 34435635 127009876 665372168 615842277 176955699 507038998 947189819 379541106 104488771 814109885 955703776 220218642 27572761 389521589 907097050 746106378 847761872 611967248 486902450 249798591 682286020 511383510 695674584 746053907 762923559 927000726 829271550 301463387 106458888 325142692 586923401 841436817 325227242 505981125 511917752 160095346 666291567 30011618 543258677 955166860 952498034 862255485 87918563 67012371 374527495 693326589 321807187 643920652 68023631 562306047 737943667 987110195 233024810 242745215 492449440 566544145 228991322 822463137 4852860 645289862 25791929 153260482 207776350 11937352 300463494 442064993 702327193 363790779 328924498 67644855 677716321 423521678 957036117 663581109 599618191 454549131 97463120 784225840 84155771 799188023 620936819 524668624 228739755 256108497 48471437 376545624 865289813 252504679 185218802 976128350 903916320 667865123 93528545 168303524 14341714 738175371 148682115 989484274 299810689 363494375 63039270 332395657 5474578 475877178 905306164 480326311 373847104 740350366 86150449 803402219 899536853 826251795 615478039 39343191 904182638 12603643 726755457 959599280 252279585 921132626 450654093 367386013 53687886 707476738 706990107 234182438 227869593 980022844 659495622 97729242 140467365 35867760 465784315 853315531 400660717 298360247 795417598 742434055 784561790 39915303 239780068 778436457 708376290 324237023 166411913 984389120 906193831 618321630 119668590 872887561 839919414 947950368 45651369 381596470 669507618 640631502 302973776 808409568 855863230 659988181 448707141 379178061 551593403 910736305 250184381 943683949 797643959 694174044 276005433 261777030 228920894 183061481 261855388 477196789 596397714 431161738 164963162 74759716 54096994 828443535 362780961 419394214 351338799 235293317 723953393 908113746 317960425 524674598 640194833 236377262 321916014 261098534 587313906 818749597 913223374 534229753 63533115 694489469 367512292 542944193 568032184 623169169 19237694 704815006 949389601 46575336 902851559 632495265 389219862 847457714 598817898 222394140 364455362 296121813 388747683 82896680 862844529 332373687 105997304 468903703 135624868 171769060 376402157 305652713 405191855 915549033 723127282 558272965 532446499 822175270 599129417 317307743 502884830 106025 575171957 847885381 93226165 341969490 734696784 92323571 499368065 630298289 137865223 207838559 170968055 736589005 500931041 215150004 350246301 741812802 924161360 79365611 957388507 918600414 876015262 296643739 729368140 787965662 307668941 161955775 732220472 197282035 349248237 639628184 119697714 913934906 559515849 720868327 266562898 909166176 707824854 577865579 431261652 814549239 412853359 304521207 109500161 359370424 824697346 461151004 5639940 293735869 870686502 560783210 195898859 150424080 847054031 888314685 955705137 973857739 545339653 823050569 701393522 210433209 983396717 397725965 570293926 794088820 980991440 311226704 699683524 97189934 47050464 456381706 147837738 719344784 288975620 847306640 943339634 99293678 868779658 498080828 568997315 151153020 2726842 571343924 142298834 468158550 545050122 86667360 521057956 274236005 457230623 660795567 413612882 38403703 540750567 305011357 580056250 44696001 324744926 114814573 482356015 657411569 250814162 944672509 973397345 7755110 621291115 192183194 329807719 808461650 20455641 482327684 615786708 354951508 580770413 452467149 43829454 904130547 985005261 76815698 211677222 40451849 327505830 779876839 327020571 999303723 422712726 584196218 444216212 823441826 685423126 356261455 133659894 949189344 522950680 930708193 551052535 275637786 484675811 644480779 350413108 916262906 314536478 397701771 712089002 644109819 449087741 201827467 613712678 999500530 715965206 649674560 757231439 975628057 110950384 919578308 338469887 460673630 758125876 527561613 461089276 344123702 40805013 457624192 60909292 737219223 927822979 768780438 427572447 894469594 556282773 949047448 207345957 95740825 366538375 447410076 520198104 817034072 454003337 94463642 797515626 585542735 973838392 595190973 664929223 738618113 262142931 672189082 793162416 872333155 741828000 87627349 795226237 600153923 121454605 941200201 138998000 31211504 693939073 472976971 616792828 571044758 211514209 337147327 615346591 903848043 625501775 959684371 961484560 744893430 581353892 104440259 512342150 426581733 131947656 152803111 684091891 867943802 169307688 148677592 293443485 968253285 808719844 252374274 802525092 314968165 86064947 917987515 125811365 360355260 722396308 351189265 532368609 781046866 641989870 919083200 203187136 1470414 332976423 649643967 982744467 737585860 988848335 87302189 265175426 428975065 842913212 434402428 71163066 430942747 144915164 989113486 756682794 869062245 700342152 831355905 821326087 644958857 456485686 422730745 498810023 467754255 226098379 753187381 101818848 58603763 152736987 629032179 312027229 53979861 190355826 750324520 518010563 783607838 475925244 457886734 321653260 458589621 91479619 2943305 915951167 883267942 849121338 305863227 81787357 908020974 145855714 687029578 945637506 618852598 674321153 843781817 444486501 148585917 854397382 34919056 429247273 717943974 355851912 395851441 82844110 173967404 364472566 538864656 524483149 165296801 691069207 599654181 300330229 17358699 558564714 762645538 280438526 427705348 921218315 229514251 624039746 550040695 501588534 53654208 970661113 142704705 710797126 39630624 6529377 661606109 194911796 792266462 442219791 894846646 186080731 965274390 113233393 901486851 260308883 119128086 433390596 438960049 109145 750275268 966571901 335453035 321119146 929232860 85522907 150757671 992287457 884846344 315366732 533354282 559738171 275853109 239879350 798012378 312954577 268355807 933622259 289390542 161713212 454483317 83560419 648386737 894182997 365416040 727766695 692859179 229483920 924412342 496148311 480415435 424857250 324129167 228635847 121860214 160907188 558985179 748696719 162031975 472762619 934136023 382191885 44416369 570117221 443999401 848264138 749498977 571195495 856709950 466572517 35013579 44962641 997195102 422218280 595854037 162858574 822415075 557998938 437037401 747785761 275892366 325185575 541260638 555314891 21236442 230301682 50015772 854414276 17247308 299592600 808071830 7892083 419043525 73569832 956674301 360470086 173944251 957089584 864854525 288703889 749508028 44617346 694812645 190661958 705793236 921432453 614977178 670819877 905307517 544702406 147770646 669993575 197506471 192194750 90192624 983280047 830068970 379406959 428958448 385303067 414725655 402786342 226965277 486956332 566045113 353171770 621109261 379881522 33833710 616708088 318992197 715672713 350295345 204850131 646787525 332836417 236058231 973408934 950620482 982910670 304192386 867942785 161250647 84570853 228985311 416018817 949742070 312380637 727860283 660998057 241607636 162785927 825958593 776631720 139103673 228033481 161198023 792061879 763925936 787477481 876056363 473727747 324889491 16913228 78247368 502610736 562041135 289741503 748912215 209205275 464796717 317431971 318556998 884139393 105162857 514709554 746024403 743482494 511643977 864994030 454804543 343737491 420652732 975117045 263481778 962461302 420224221 337329956 568704879 545852188 743240666 459773564 540038910 666272089 916116090 930791550 929580011 551047580 484398670 956255907 235640288 311176944 780406059 572452317 872056357 949654285 561222389 555194990 255111832 68744148 539083632 192586731 992566607 652855843 705469758 863310375 384844891 906691562 224276732 642539257 600271452 319304618 185097361 789967627 149075076 304000481 269804217 178944765 785768355 118557837 122131026 906059487 714441924 364329899 54379914 777791087 973614252 252623929 89585337 498236723 270707979 122004146 373640166 877889832 22673417 182456209 180023986 195675937 217793288 408290404 364575099 292809750 848352506 445247622 266290278 516265691 880320613 806631015 986109743 181074959 148721696 984557610 819537311 129330456 662868807 385508183 903804562 337543304 847754671 299895808 666588056 419029942 323700978 903701336 288767920 831239326 913465086 25072404 88605416 769925694 824103241 219023976 501047278 775105547 585895745 604846114 708459722 260938259 588832243 161426795 264261247 86420977 508189328 570273652 370241798 407350071 523497788 92032404 372488937 713975746 112324685 865079064 926716740 844769793 595403535 848097297 440965923 973721797 586802854 547347238 528956002 403909596 458661472 483399541 515441523 666494495 145160925 152624942 268583961 69054088 314769591 741046114 221925534 467744059 790041752 805791339 278144336 239000738 290631566 208087508 960352309 777029722 63414313 19300375 645530341 897474674 619014701 970740483 207922267 191548298 528748650 317290226 504918418 729289419 140500991 754099991 281808155 296484677 97710365 863444961 495708418 111797066 898271373 974825119 750549277 229416210 304061087 371726050 611928217 884224654 131866583 871526126 684970881 849791022 645628696 237543762 138437112 371825705 816542845 273155629 149040454 5164253 283581355 840936729 264298084 68508145 448698714 680467635 732801454 106879296 947631726 646243818 51071651 617529193 290258727 302357963 135745522 51591260 585520070 516148311 450947705 367888534 408508014 588912266 192939747 970937482 132102180 180747284 934225777 228362496 258551444 353666207 358038857 329159163 37420868 470935743 767962528 426866470 386381456 8102605 697040969 450021392 69156847 689582152 945343509 428364428 572348230 494551410 518719247 626019338 967962731 314253583 352486429 428813299 108714512 499215453 475156426 695886589 351730627 886814031 655195851 271863004 742376247 483694324 568007400 522301990 927999684 758907697 992637745 564170404 24250266 189218328 132430585 361021904 496223289 466867277 799095443 368298451 476872149 182745138 580653280 560033834 300999588 93060262 256517984 161595452 57784437 827991766 200104178 29454806 643834141 346395616 947628924 615192025 439093987 53211544 675752613 988517531 911107413 930573988 653522828 650510022 311648295 584398806 681289689 584249148 650429467 439890359 997221700 367004633 899784756 579034371 152309394 415553383 741350627 792671980 540669893 746792158 812001210 624552987 512182626 397557264 356768079 889369306 325885779 830266441 404819971 911116123 741063130 340026504 424674086 892047554 590257064 974933475 320029497 375222950 784121263 398301720 912884035 283687306 453385132 959115245 19665847 761656705 355326558 415024871 576513574 573247185 213229779 344842572 40663291 485835024 665905963 462566116 539532593 878187368 95179358 405543990 939164041 347064126 490239576 103388112 295183989 668470563 716249972 730753059 168149888 614437237 34747406 971322708 989050985 289000812 699108979 701902129 600554747 135533238 114726313 724569295 282387618 663083189 450470551 429150790 595741217 36756081 393154872 787715200 896275991 558409402 946105982 443085470 897250655 668550346 578711161 690966821 405925344 983440536 532512041 325050605 243782572 27955084 205789125 983942245 7844878 236154553 273160108 818065653 58517610 712241716 971097169 351688904 45756637 158150405 954189731 362886105 794374137 181083248 133650550 789868684 297691589 464783818 133835710 232943643 901774371 606217629 283596971 843885424 69143070 736015636 990943778 9884310 885318303 610845617 381874621 902959850 969092015 808502988 94764736 280142149 730314283 102831236 26851342 237975100 472780047 19326869 886281036 86708281 599224287 694362336 320818537 469644058 315403787 191156862 298476847 542435196 315707809 996782902 727246345 327433920 61112224 617151558 115767656 729569752 572122065 639830294 181138682 895591169 147413252 197204903 76547012 646985032 511507236 610203157 262661179 910473363 769934358 520421436 292924955 964491336 332273233 239793935 474205028 944276398 527317876 22586898 745476596 933140020 601710700 374501170 569855922 25017416 213256555 124690325 750602129 394292259 633150244 165189577 280606689 341190275 502425320 526024928 762885133 625297137 53997715 502527148 294598215 832339142 354437703 331320505 765660241 781246854 424538188 577874804 68096174 142067807 353248892 99329439 524982229 695216422 724828302 679270268 13694198 845463406 945681032 717403611 850001089 632308116 762385497 758494627 441775580 184517483 145430536 825061955 42676121 772246982 154559234 29542629 894303047 95626134 218006641 1803894 60343443 69265330 871935214 327334795 437023045 262557185 446223568 883247563 788382198 931187298 933759860 623007911 60433736 706021279 921145174 51445090 939122087 52903522 595271373 15054222 734250997 800639675 983527360 917434854 824330003 545236521 43324366 518787150 20840877 138028884 519760513 834587801 694578396 644460817 668518041 272999440 431200994 344259721 215552339 178734481 148354151 120293247 759279755 792148543 528692749 324908847 865569198 227897868 806279748 256385275 393054945 497421350 368791997 900100341 792235377 373110402 816273178 697828995 140759349 859677775 536911937 722260489 219686035 722622973 12462727 498739831 204884543 656828590 79468404 334970406 116926135 196854271 192500932 724603363 215665259 974539545 961482418 88699892 133163122 161854150 254378702 433881871 915061818 953470794 864642814 138229874 662267191 31127678 866967051 870528185 514324239 786427501 189201487 645274285 225943112 683269688 936549712 495097703 169186764 887784904 844686666 431290085 440863916 332417862 800151778 616280902 204055464 727080185 649713614 414976913 838959182 674712667 972928561 545598038 316453212 884943746 169647242 920098116 692108956 79211568 113106925 570968153 5570856 753988540 904491279 549705097 529117433 854459847 667434833 279384476 732963426 134456142 554292849 22813327 211643001 876942570 771194861 593836982 344541829 611251725 324914291 791431052 296586907 726473408 312859727 897440629 725596783 698981780 3735317 279638355 196011569 759850832 527498383 920787120 662351759 221056169 676083005 521040218 374274468 480559177 170375030 863622609 457549257 622062223 321659788 934438977 461894750 96058428 392267539 876823983 21241955 670610687 820181379 964938417 657574143 933452880 506020854 305210679 591943661 589700577 947820430 316983219 598329864 124884632 565035660 577792094 38624747 677921468 753048566 751752343 128923932 588754270 133025115 446860456 700305331 154170411 784487457 123112797 366970416 550379432 715883839 95096360 656906294 493373851 918183459 715911100 444884165 83740850 260718916 271350504 839961872 992869936 585257883 631725181 754612511 33647546 50584483 915872369 197144017 350776711 927387384 446944405 445984396 42596544 253147525 791005619 700874230 229761618 103430151 920890878 586746236 609459210 185929857 243939123 728003749 474933950 43282705 861523148 274598285 415939622 296341246 224033276 358558567 768420080 891283475 281683062 674902552 315632609 164314485 948050090 506389145 774174444 255189282 966291575 217067893 610134560 377183350 740021850 885060224 846037410 748042791 14444622 859047458 615765168 605288903 234098981 229703293 107106726 443679355 896836732 157241527 679133179 694525734 484348453 444161041 625357947 127281120 168106108 414812992 581249689 530786802 205709953 990991997 668335049 408588704 119675456 150786281 185950711 900503774 80587001 998461313 823287006 137736012 615717330 181188198 890424334 973263393 722333722 752854140 180134357 704650813 550346417 18962560 501808015 254020168 793359381 798682762 811602198 109017851 556217368 415515946 707242904 815061973 256658433 635953403 820823923 787080831 467915769 113900766 439807012 948600851 49672296 891897446 994200690 427117365 674594648 963721271 709352953 593190305 959994451 772707084 22294287 758503902 123178944 385193826 133148439 225514674 68070270 412437504 504202200 199719334 185028535 959712283 351229274 308504530 445820433 197185808 319326252 976755865 699712061 854279152 23853158 686685553 214504339 190592446 786506467 53487326 746720228 244679170 302959022 870277443 961577142 269889693 874736084 655634621 203556648 404607658 952605127 417978970 627635275 460293398 367308986 320204017 603236622 807666275 629011731 112993111 18403273 917292913 544445638 830979555 604709182 60310266 277200666 363146549 179693485 474455046 618651906 599628085 726664751 525937780 668815653 36046158 971432215 790513520 523242901 344990302 261641617 779714570 88701999 547768066 132291723 611853231 281304910 852238208 624983769 347310433 687007419 76772859 335266784 177467129 307857707 475808411 463065378 568873112 143724580 145126048 92546052 472066135 44190356 888737886 824283856 967035032 743735691 940227572 74584012 263543690 408939888 443648990 940080361 40167005 111697131 315597039 159622269 132433917 278305367 100680326 360117874 313945371 269402786 672638253 117259514 642103200 447553214 291880732 222790875 993969994 572814572 639599773 6315622 974939516 393915262 686378717 904257202 229634766 441216969 494159211 864822070 244819074 951247060 181408684 634939685 535852843 199587989 505352843 492343098 987899216 486312704 44835314 583350737 185085362 756991823 730566167 917767030 411157200 368530511 678346140 264995994 782631815 142970052 831801387 715935185 327452577 399179974 540604205 432141118 807889450 304147549 440034702 814925147 642838541 796902217 132778406 196907369 303850675 328080711 744212361 41251978 287269011 965380411 294496702 769618746 500963323 966819817 98438955 121886344 838814102 872941816 508890710 411403701 824273164 578529243 363760733 620598141 219538545 350053288 808839984 166601129 312900541 69417144 968233288 847082797 579979770 503993868 874331659 38005831 939680210 239160312 984347137 164849981 241421615 793653845 159793617 50111496 534022818 409895557 636482307 706188171 910395614 676563449 434064829 595538934 332930677 22700351 811888229 183971258 783987163 244632729 50023074 150944487 316731712 655885038 293985128 839056720 29968450 134144434 684128952 840673783 899206552 443878755 562098989 504325913 820653206 887732731 100426009 52327761 454336253 949845911 840892537 481653634 563855756 442147529 793016420 424066883 932037909 464934032 643287592 848328787 304890699 193568243 107214491 682936667 727798398 363242389 957421859 946300580 17300745 307090371 482440192 594327154 118421015 428992374 71484408 607515084 706761781 591035604 672790933 651300533 587422860 358310702 164045630 523616881 93879017 584959200 391757274 876335194 329833733 601353291 467318241 229958919 368937481 724432604 212393382 331356092 962667393 980807584 24096616 242887782 859106874 228497084 100303136 134043721 963399799 53873054 114982167 526989273 109086136 642909410 596502434 617041186 162042967 643924165 204249251 317076915 84930011 413559145 293479478 512000806 793231814 731286761 537627504 830684495 217719807 861493808 297470589 563399610 159140574 971931367 844332636 979903354 808224340 417874533 832493842 515256549 18804608 379311752 511242415 997852534 88485069 122769663 301656637 805023211 544802959 435141494 930344195 277961902 682250190 956482303 715807668 695006065 205810532 835578290 586218028 765918400 584808230 564795639 5898272 525028767 684889375 566160844 127255083 880519988 219168320 681782053 864139602 553047967 274712830 681530935 318543760 488340426 646626187 226658263 312820283 882008050 345583257 479636671 754817551 490849029 785014913 726010604 166334473 866313198 226578748 55180982 230453053 556188286 318612273 905694098 441372533 170741394 880261628 260513260 773957159 415343512 364092162 146784453 551400561 132737156 533452638 491755820 675079009 888097751 397098613 423123718 738086682 985526611 577840660 899116302 188783316 231911824 464945598 479724282 584094618 744663425 787998448 428725060 164751002 710229067 642536239 124504574 389046866 253390034 498255187 90133384 819171484 778133309 254873655 446327527 499981508 936236003 147980572 862302232 775105305 986400352 822209819 870579160 211082610 182528994 953425915 586987567 75966587 266905770 882471969 233209026 213636414 578201616 62233389 339081021 135830638 567931616 73379288 638194306 85486388 222030713 495106282 954022323 294401693 998715158 689607558 954667092 247373332 486381511 404059533 188061726 772597842 713393717 506605107 42814403 771611746 391667599 984908877 658138513 115957243 568923860 913365860 517919439 402399990 706327892 882012299 961111420 25283664 605454259 194627368 447462610 931745829 241673674 954355097 97517004 515932569 398086387 312741868 552993131 300860067 277139846 429205906 841554784 195453888 358122510 114341752 536557123 530249503 870170583 106089294 734028131 728931737 132898115 441311198 866886276 653706709 435570354 265156600 12874786 396615642 885710146 729602279 369072294 718855339 586119319 792649473 622717935 443184196 887341422 990419481 547683143 749188917 267508638 566209045 643603688 423072410 418129261 842300548 918594779 706346532 806560868 340392097 169230018 393894601 94474369 155517059 249623888 693131656 807302829 87455020 571337044 65544437 532725331 491171939 97042414 10276659 967615664 262594387 133980848 978120817 955406970 504459603 893538847 813109034 665513124 604968445 330645387 276693136 814011804 778989604 480485921 610377989 162484254 244114869 799162915 231339755 980192018 932904865 240414142 879796245 731382216 809657280 594792366 793301141 909821568 671795039 980075802 591822906 454264121 488098091 880191898 204130642 704703348 138143838 394870388 160683187 736044119 470588698 320365507 560025829 166406006 206416298 703893293 898772224 346331826 532522898 745309293 371615583 976522424 589475253 737030679 432594275 544350731 423292207 363012171 788665757 675726197 777120617 2314795 78427514 918402274 39489418 164060265 874755208 817349916 91783219 105724615 178133870 878346369 195698228 123497328 18211344 801346577 277446150 21006265 904066846 258457907 377925019 193930299 665837575 645219608 134953977 771587399 45957859 366170622 806499451 540039360 552368060 974070925 176201677 388123005 998209849 28709470 530613411 125317044 215139534 556274733 481312596 638140633 449549289 773347070 700725311 473317038 486838755 479097749 474161620 151467842 548746678 910645859 684498356 575802017 244158013 243738968 68678960 156542992 531158362 918105718 859986057 845837779 902574803 662279247 229453605 441949585 300093339 842429831 143834226 273223683 458589875 974109647 458911963 553809979 668698788 959253482 782580895 480615479 318891495 667788825 721201591 19487933 15537253 39876826 854286788 538134749 406741033 645748459 664040668 681014288 935580098 40714941 374128902 739107465 50498728 489483781 953636331 669469283 94224787 162296065 503584214 461999629 792461969 122778364 387994508 381750231 778861904 468031343 721214401 831841090 601701413 419372537 554288967 820976222 890731759 891010573 536291887 896157910 160292920 445068607 272933283 183576418 673479989 514591771 353715082 936828899 327929704 216095001 344232111 579920219 465332335 33617639 806129059 938423868 84844848 138182253 411033589 120840921 199207232 996628004 311960213 623309787 291487986 800390657 26842995 388083219 349475545 453281012 434246377 952833836 653477825 951925590 696379089 616551698 86819574 3404513 665980485 70821394 203110795 130540867 86896188 750787152 809868882 322576914 935629343 571874377 328559587 127826427 148998730 118796608 356975070 297799389 302181611 464289727 467285221 520674724 308811182 465871319 70478447 266459630 246229630 702337586 306302961 823162591 982663945 652444912 96188892 607405338 160502428 848806116 139978797 748477813 416838687 19740249 824069438 870072749 496008052 269154806 561101993 761789862 680988226 813390018 667700423 442345488 433497095 840558633 685301103 12187877 72957535 855097191 958032711 529914565 172634406 459836346 525821953 979949802 601124791 351986734 771952058 65373393 258722318 784694662 280222419 769893306 353186293 174685067 542459351 772894677 242999540 677510861 823181830 985743430 435308935 61641824 644985336 14777195 609690795 258580663 241560553 28278085 908215563 172304190 276263695 672457272 803325896 51386324 636705270 565666347 324991554 76094515 916611763 11368174 705806716 523370664 180008478 792791693 995176049 584101146 57827338 963922732 523068444 724269967 432240654 112915716 46979394 604567118 69591719 836789650 596261517 266026191 760071243 225375742 354192431 573618597 750781475 451298958 797960141 757394448 814774959 916184046 408887112 226397444 246733924 523915453 750904174 604422473 583360857 587964173 83249524 72629843 346431065 38736647 319549001 876056248 506930921 567099043 303650425 596683674 989834156 679919649 286807784 430134772 964123300 559909334 678826410 78173327 977626828 881769344 348614232 869879538 862944473 238956815 16179246 707724170 228984135 382102914 195289674 264345109 141972635 664659265 213633522 597655436 449686630 131523008 773464434 41397325 893123677 764095940 734985673 335640976 350959792 260145 995387362 816730449 902023946 705496442 963696629 42625158 24471668 573109805 965961471 938383496 918443122 329817754 76048520 681439511 14548284 750093522 742466993 747584140 962390721 610569750 923812151 219111046 763243177 547387042 144199246 167957375 842131911 230447423 629118727 282080245 321763561 486238730 669136334 562594553 975959448 63204147 462108721 349540591 909946464 417017418 769730836 302329043 665722891 42648594 940913921 521434733 889233135 450469207 245188203 924133480 826800037 575235893 771941782 491291956 665049484 607090455 746009411 692405064 110580237 965110443 310458523 674620370 692038237 731879304 407266151 644912963 957186765 282495719 272442614 342515300 916621194 608264440 907867650 305147858 770817038 245055552 891396873 528321736 439906456 218923301 559069604 643361974 65366694 322505582 322485054 25568454 855131780 153728930 306958155 281869963 145248700 806448510 673038321 926639324 415190356 593764229 336054212 74281838 915320175 261460961 526514294 207908549 872388371 469555312 644996918 90231635 461569859 721409682 765117526 789736402 944339040 916705380 855867876 7426640 301272038 154499404 870970538 441496662 593017650 778525139 957352016 441392208 390944531 630748981 586416126 166303117 930819712 991239868 637340789 630773952 817236066 747335829 148704102 992058301 803334465 504808296 254234757 552083547 441808798 405324301 37284686 947007006 857649752 181655710 660972064 627794442 705232107 185477928 862728835 585219135 129898851 370954823 207317041 454157767 231010306 719314893 390996983 785159973 727443947 172276164 264381323 297479503 334468430 984258250 353287453 85929421 321634057 134945859 107802252 102851132 705448307 98589294 931512937 839289499 567570840 365669650 827576979 909697200 67533036 931262872 199597700 110392542 868552664 672134255 428592265