1000000000 1000 11139168 391337048 538883744 535937150 532332526 8099343 143698367 339543270 152590624 14304401 234675590 941909102 449369743 147668299 266396607 148834877 90258367 425079198 370976343 531131241 179074744 338989816 943345633 401527024 788833071 41605751 750660847 753281912 614996176 145411643 964227808 146036383 716077316 588236342 593839023 754225697 414976697 675975267 745647850 606524229 885697914 686731166 500007715 821432245 402877965 863009008 895818331 112160879 182145551 85164905 559510452 72659640 527185407 697438766 224913296 924311238 993451117 199223870 719010393 261043470 624650799 937807009 852891859 973107823 50143781 814194786 623049660 372483138 80005886 497716615 171873893 655559912 466958219 532878434 637549439 513220691 150493681 467674113 965211209 934593788 201174812 998298461 738384436 421745522 755408702 310675869 993426020 340110397 42364286 694836282 46011633 685105256 182658669 495744089 300355472 56972124 433165733 41415211 723395243 182032973 257277309 853139301 190546605 174596917 137821497 148969545 75253797 378941690 682441131 520226255 934283165 749188740 380369203 860235176 37347058 286446807 836671721 976542645 511847274 24553207 76471569 402784993 969874906 214354652 863548310 368084318 4900393 476861950 233729532 534873334 783364533 444900982 343334617 230055589 589343215 232615126 39483765 249437878 877496128 782849725 556141400 446589268 557823872 626955892 898025827 530789894 8745675 461759249 361919258 788948788 617034742 597232909 144877563 324947181 157612662 58372318 241422915 597832765 149002246 660278713 769371440 528204673 610152274 196658745 846027383 117371271 579364811 42551669 310632738 302191339 110653441 751598764 526779401 160244380 678703279 872396361 40769142 32077113 536986789 898182550 89704080 380595690 849671481 636042571 813934987 7823023 281613725 871249733 108296086 984828171 170751779 555618697 143387130 966689311 120842251 74028293 903705302 785386573 586343287 488887296 280264417 816456429 618287938 779757389 336996671 868238543 849998923 390835411 529452126 989917937 584775509 558680697 44742851 969612049 947661497 268225608 609972655 559942729 15242467 543040292 612477059 873028850 907251053 78591700 81960200 897870425 834999672 863541433 813019008 436284142 871847367 39139232 786585778 823832828 36339444 728992923 850243071 986692382 617913164 601494734 519313339 125533536 331125174 363880329 315679638 784778371 181393952 753090207 281403102 778837476 322270566 959863713 75959591 769496103 304111024 732455958 905289816 692691251 287395070 325020459 35184536 889897037 262765613 736916817 755678766 669710292 575405619 158859884 408891107 437226401 191789547 469303021 951154447 362494694 86150058 220150245 862846740 490774594 733870697 844510835 496079933 798107461 713017517 636936587 303510588 545006054 925108869 852646097 191640961 522238087 622459714 2838646 497823628 469894456 722866435 23923347 511234740 554391605 986403806 916178403 593915684 964764658 381501946 27454614 167957813 577196061 512065495 218728783 788901575 228477867 382584390 549136642 606077479 149591654 48822497 789604056 687668616 731439778 785044684 424812509 22532894 146751522 994840126 447168110 325178630 792918430 872857244 627395546 348260530 948579204 477637837 621427663 979609371 191094322 892812206 635388538 841483186 57850785 371523152 798233774 708813497 215862552 178356105 971387757 47481893 508489636 474221490 146114470 476251559 867256551 20261933 984652129 364918056 745808717 320878448 716770405 661409631 758725042 799737515 369661622 767290709 736914903 153504841 183100226 715496397 854809723 977488804 34816040 331809653 198442923 527735677 818569317 754489089 44954084 32236765 299559444 593615327 921227981 485302451 396253680 931004989 965285179 366794 310416436 86369234 408369226 555027068 117438791 290019838 874696515 522645631 184337224 196609848 989672579 334146914 643098921 724457950 816668630 84934101 175379435 35137122 178438660 350657897 618442787 415121686 363229883 589449196 864851892 593705323 757745518 354471357 221597828 457039389 779980282 270429246 431294489 217577822 76262976 834861658 886632367 149886683 122573149 484476293 300417207 131557669 268635901 876480317 106616873 905690416 892576414 123238784 460439972 774148210 991402456 235391534 414497558 699281283 834418523 204338355 992014726 219581251 5316532 292684646 181912908 39212105 731802958 213880514 833139280 12034333 719831987 52505479 284626178 697226319 365794460 310014536 887837705 906678586 58721550 357874786 439209364 989245855 693702585 141075390 589489618 199582851 316146636 879472100 865600410 183367953 362577493 613861229 129954336 190209824 489194134 231226778 268308398 579120214 800187957 131932685 790188129 747651539 10957383 726139001 3212604 381863462 985701882 725163629 346684460 98619812 318234578 135960082 290904726 263844074 566953886 832546461 289514664 282650168 752128708 772006531 960873394 722938317 862369675 591131162 139783344 733121956 337553369 186866429 863417036 498772479 989067032 530384341 805395744 29432631 154310124 234331627 989123583 92721129 707213916 877402995 987224426 396547930 662629085 818610440 643404349 643885562 333341687 646491785 26867784 121663156 165104084 238586278 587462403 77591296 796529396 542564757 502145265 370547418 33938783 211227080 886357069 402328022 462668198 565224913 361056135 763244603 633476900 33623506 686218732 59516440 648284414 401122994 908626707 349561276 635259605 602521731 484729330 804945056 589243861 986973640 530183784 888702996 594560229 498756046 885645796 162946354 30313938 75172981 856331819 382039603 214199364 823843323 736416123 367737551 886040759 311773290 338189040 104638506 429225512 289233013 671907656 272263010 726861931 811039417 436003148 724578015 338475563 861833619 827335169 486463705 483034116 573825096 762449004 59497372 238585910 147140888 884588148 662860732 769630345 626155767 536056291 58869367 849921432 176634389 987526072 14743974 845452421 69598975 319799869 173671754 770232659 703422561 660412208 903363713 616054508 434401560 102732949 486793043 372185828 100678957 535249694 234766835 724242131 568377171 524204488 567865896 908969755 765660006 307511640 231196457 124631177 490501653 201059891 425811038 465702347 359352998 199224605 761927687 132570357 967010231 778490136 72654865 977285190 276242575 65403755 111101264 44908639 190089787 306782980 975201424 622387531 906361624 148564263 624579769 398115298 730127006 152333111 697909362 274259322 795895955 919883939 617398630 387629311 623767282 882801356 263608990 280479496 397521499 306331898 429274810 49803504 595336381 955968037 695549418 479163414 337155887 20086822 934355506 530520464 467296419 611505102 248445746 239198433 561795742 306878228 878452652 727556120 602396245 582389511 264568303 160589368 752008393 794831860 777437479 168057244 545684068 200518916 255151170 629335439 542896285 664804415 949924115 203779940 980874402 245522859 760337297 562475227 860836532 123889759 838329613 96854020 561894849 303655583 678359931 20121753 49954778 626005770 432789393 654698069 926247391 717040312 179308047 218635340 344449372 919129262 294000108 204732537 751599208 284869327 852492559 614929211 380136745 936455638 529763833 877335830 239766141 31385640 838230194 455654213 365981796 422635658 239036769 966717285 780001860 38446395 212689677 488331246 702164713 419145634 39089728 949555483 720217132 989004811 788895629 564644771 112621555 644479524 280479633 510158999 562252906 215924199 112766415 780532594 769061814 108545957 203194097 938290918 646854027 309457221 4428714 434671710 798339236 665347767 234333507 531230623 18713119 575059518 793617955 973524870 415602351 650641970 559794889 172664093 207462633 575152302 36143840 559131057 351367631 107313424 687335505 727249309 591903187 249730253 545532726 130338410 875601398 518685348 745652124 599613969 458813453 253916411 732095419 762232315 344749592 976612013 993315777 332923842 7015490 660919186 465068652 477290520 7042140 55829278 995465738 435520617 790230348 632864123 215720146 508316789 292595941 978857286 137588485 688156178 806772176 340759143 668753720 901327171 381782685 306174940 593757190 810190838 139391620 854136672 636889638 900095447 147702218 17864897 633054348 293184803 893040194 444362028 438444030 37325539 61645101 819595915 240492511 294049545 609426790 618969599 659841085 647969583 694896150 963840969 419534177 312684847 678788866 122595909 379710885 881228234 562298990 267029547 74910764 856404245 378039314 438337068 797904326 213255113 604252717 139243743 876522289 828492563 800944131 545779206 382985132 839982511 409946947 222332503 244324954 49035104 867881510 112311375 467190983 619772590 909004255 950019733 486853018 366890626 106662984 394648952 158470213 513404617 273782816 804012311 281824722 18085477 28080653 460979920 218150659 861866712 778620968 159010316 730493920 812215616 122609165 374409429 802833743 46256774 605304196 777916257 198295933 920881968 52748937 839673956 163204344 416318386 635130992 292422139 948962310 749376844 98153142 961502542 194498265 543595311 84090480 18748657 318336576 875698339 242567620 394233345 539636919 602375310 360434670 425464726 966397578 352665115 768089073 853320070 903772501 255431059 136867645 17092401 373651735 294764988 452397093 738302895 985488145 319276583 173273261 697080799 136495105 38491412 803357909 419009883 789970189 227658678 153224962 705255453 396308505 715765639 20156457 9026710 327318194 900397277 17538178 899772909 334392737 838992753 352094565 947575971 785952905 407851504 199890422 319200348 174005589 564182563 258369167 315396100 996948225 264982317 66279203 963495083 379435332 663221031 168469506 7414394 815938553 632472885 728370268 853070163 925673738 671412900 513536579 992034134 261213800 93703942 816315318 46761525 204530108 835405785 411104556 879566410 668705452 181709259 681619766 8497005 517355208 683391961 596340634 226383778 974408341 516462407 315276637 338293552 372658994 182361195 938455151 75052035 722255382 217637877 329573904 436988811 643341220 713503336 8438621 284165779 173546620 944395867 566513553 74262883 954392970 862485159 403691417 503345561 46679448 340734182 29293950 150994647 321925296 640370996 413623781 612171527 323959012 738126950 71882799 917409859 346289856 495033641 414630269 429016650 6270616 127577960 506132901 586889467 398045592 643282375 280447464 16031326 39889885 158318732 182475209 797677010 757226166 400438956 468337389 873832457 879183386 898849204 629854599 487896621 22302054 166398082 30262833 712821081 282000805 826492775 119094162 9962559 930030583 682425252 770619538 575390003 837813098 140844921 195647246 91073673 635852622 971877076 965614998 342230061 411068388 423095290 804698311 119284007 790009596 267147178 344271696 347113336 382824651 742011993 160955028 460593736 373999628 670900645 493575941 701340177 347567209 569829514 587767584 579274328 349716391 66057 92612857 681457624 609061910 741814093 562246712 868124421 498777754 916899261 732947626 397520225 451294737 348895563 227535354 801680772 151996642 932436777 97120210 537528759 239411724 170723269 446050737 281256274 58684539 827763844 6545150 248649038 832370402 956165297 526471760 317453899 569560419 429500016 783920589 994292179 61390514 428842545 313740570 526593658 928427766 72421713 456292672 544422642 764552265 68889230 300920349 1910560 495259544 20965576 65242802 648419531 801894654 757650097 956900524 25234574 512991803 392098628 92207731 3505036 961529857 465806820 614998582 535778861 866386228 526854802 376712872 351711820 687908344 788860768 782083432 288429966 635856585 602031475 560175465 481593084 880085352 170675321 895984269 689750787 636634397 905750921 553873146 40258082 441941767 346119115 550532864 74156911 61932272 404789425 287513675 46741528 859786565 62955204 805400846 12888116 715314976 18175766 675837460 999296416 322946014 907816402 206888409 529811995 122375385 661163456 268795959 620754103 339650261 909527410 946206750 361479457 996925753 203767922 152066099 455693999 653680702 176572596 650302880 575960407 173026024 373733262 217658253 12344083 437630195 146893859 537630321 300091797 355766103 743194832 721307272 464530612 692222775 918180337 690580974 187532229 726853848 545781180 432770512 497933118 633398444 929854158 744566778 86675101 93845174 750619774 293382192 169337063 862000960 986310003 183727434 430406569 212553642 441581553 56831889 102399457 472331887 81988470 123510265 657060748 480273623 579502332 175920293 374229651 680704227 916184037 474851787 538528569 735773359 313409932 254799782 457456411 540539790 365990698 291303167 437063161 296276433 579988380 878863819 319191529 137761764 347861723 92003272 421417148 139381951 274878558 326353584 829441380 389419816 545864732 36968622 989926612 617271972 509937907 770664201 501851233 498147840 52675531 275691623 647294628 334347812 418851495 244619772 732711593 71076198 471283684 756288988 570904152 560399554 336055909 260821645 345266122 104913259 303684452 402496903 653350795 710125917 364657713 365722485 918622814 446091004 208375165 503747769 330487851 469659738 376293808 449797458 458689956 404868579 90937748 390313783 749870954 131420817 806360327 38392123 364395330 644560003 833797012 601626286 535150523 713267007 484959056 927050493 987439750 605926727 595967440 420703537 704525997 411411051 244525972 445078862 372534077 329134765 507027627 596623812 658270950 692421637 787300619 421750238 905415741 438875928 754303476 216230613 656824328 882849725 520913038 1488904 445629847 998304084 839314356 143799434 517051184 872291008 186069945 328279617 272215056 754311639 260395133 875222117 186848266 133058149 865353188 59973271 769595596 645451554 824089343 410028787 814008876 756643698 634188187 581967364 769193913 362411209 679872408 88440557 290082847 222929491 266222663 582797233 365163919 892592964 775555494 219912815 513251057 19741487 628032774 304757974 929027878 695933016 690340831 94752131 289383357 688429943 791882266 930109280 59562314 961613257 2254078 643201426 663232036 152918409 86899863 908149074 680722673 461130794 937874203 589934549 205083649 733955028 73698922 621025431 998546694 889560204 233614470 717892285 121986940 474921547 273407597 380518574 674545776 659311992 656243584 582609817 747256172 764859546 240407513 297046526 80802536 216945356 22796561 517941349 500472551 743421647 623068197 557279679 36375446 303583481 572525440 783110501 623258007 946850917 75469110 226201606 958451831 795739696 114844519 231861185 214908936 385789264 127355130 671969131 447183344 366570446 41585900 588181251 719192373 590797741 392434481 317198000 629629499 392322352 272599775 962741949 192569183 374739642 965448801 236981963 319297471 828101781 521315641 489556912 732838291 112334449 235294157 933419424 993958875 734151858 841978154 970576105 655279770 232876947 918226065 356408064 372509194 321003194 149109010 165731442 11713643 854904496 405752478 552505676 466616854 767402736 781751947 808027101 183000677 718567831 443230305 642306834 502725489 855723982 936564910 122405406 285752729 932056822 561129518 451558741 87621397 931368345 229504395 418199485 224257370 642841241 402201343 536916921 802370782 323411016 562648855 298119426 389757553 600703391 432821351 910223633 332245412 593594445 52601091 248178152 876466423 160591029 591701757 864255916 920850401 95594206 365494696 264316246 536936749 988516212 374070572 157966637 655781110 152949019 521785779 803713235 115924462 96542486 751970059 451663657 888686389 321371518 956731872 418461382 244582323 775342241 422588331 810301786 93560589 873428025 965177877 695228765 107299984 830923924 972816075 188007778 60072386 141172980 421699707 680941220 410025477 516844421 553870628 438082805 503364712 472658427 867860866 98520456 819484093 182480633 742019489 971202851 110337916 43028029 817411509 625917615 619857589 481966773 743327755 241585227 132731802 863155501 234581291 887487856 509533185 142080620 87523824 608490924 376479766 724613693 326339994 745405566 833684361 819821733 581237302 447651972 34961693 939738574 706460451 947052996 831746002 262382914 876500421 62924137 736137926 936759658 200125085 669317576 983738610 799036255 153321500 922865592 957669113 932960967 551683626 453786861 851595752 860174512 418346750 713149614 860211479 35469107 620535185 753166071 441409971 797072013 413929052 638705607 991696792 147632790 925530106 835754509 565433587 214242043 291315753 895147923 579747626 70866160 735802881 161879486 665866119 776941193 652487048 385764940 821752353 370195402 284692960 453131071 881436313 322412144 340714193 975339979 460006876 352004199 654924846 267472968 531898843 833295932 220382915 121708817 93421143 814082608 736924215 561141414 350362948 702268023 409149194 456842093 463163662 416483209 729788114 979214637 410573962 696153580 612546891 290597297 276895806 160660797 804515223 31746916 72083170 672967986 966038637 429529531 51616965 755131167 365643088 291806550 520575397 862429109 962359191 991058134 817499186 737505503 450860948 487835658 590327034 195928318 526573206 182462769 68465816 19502522 741492998 763830570 302862837 549666091 804075959 18649188 726747856 260558797 716535159 87465269 647117894 790253947 122390603 613474075 191550631 565168039 940922606 723793989 936250872 651398486 818818788 554633771 275490534 290775497 843102091 650604084 499561988 758111235 459142648 400436681 730320150 756878960 964498323 145557078 896291394 759694823 850781148 836241494 136270447 908334397 792457372 486341579 98144954 259842000 907380419 462655986 741248031 150950506 953233458 518667348 84061898 867362899 592032227 363672503 206379106 614085274 228507147 13697918 268610466 21140260 107166152 529662479 138802613 217011260 790229079 935361072 620791611 664874850 937291555 665484733 26160888 581452274 581760528 357351369 865249548 369559118 651459365 928889929 247012102 796361299 17828502 803726413 788718911 640552939 865237206 25133741 67535779 848303363 485040151 741558458 321912109 931765198 514165302 687383217 825581917 290891357 606372845 988370667 410275627 510231192 755948904 220319663 638366908 937941555 816794647 187674745 388485325 485110713 67687025 666563930 920821086 363479877 946535742 625852785 260357766 75233082 938848389 106878202 429868044 509800358 320467672 581172674 162495521 536308385 714266845 264552959 738137533 663008686 460959704 266671170 920447291 625136851 452466356 860487730 438801766 618590080 140792213 839404368 942088631 630613225 311361303 420512748 89895683 257833233 742157917 654341939 966508493 117072663 842800007 823295928 899848047 384752083 171812784 644699710 377284104 168686860 906653634 773466312 747922828 211610374 298792240 43973564 891750237 356441476 162591361 839866022 564303479 676793479 372286721 505198854 542042361 486221238 464265824 600911374 829205350 16109158 37330633 957094488 731840587 446101022 356527287 252934659 85326126 151730234 942184878 238962983 436465762 34214990 658214236 897521497 197925032 390220159 47651094 687446932 336703454 579645579 392117885 187359339 772083216 466410628 13420996 344352108 996882955 7869707 670046813 306870568 134460241 370861482 974673807 212660729 109490018 24099716 785099367 861903997 890978029 823257783 742794354 323662895 214212705 122770988 361133962 502910049 104163911 994228143 563491412 251663349 501942776 864048353 803496575 849275084 460589192 234309774 639579950 533532611 243733480 100852852 222692997 281960645 116552050 790588576 180611771 877347452 25535727 445594940 410587990 398336799 906927459 298426394 811994293 451397580 873447720 985253619 287297176 666768050 62617192 156026785 977883286 415478550 343659143 372166676 658599385 108110575 899331189